IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C# Discussion :

C# champ manquant requête WMI


Sujet :

C#

  1. #1
    Membre du Club
    Homme Profil pro
    Chef de projet en SSII
    Inscrit en
    Mai 2007
    Messages
    59
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Chef de projet en SSII

    Informations forums :
    Inscription : Mai 2007
    Messages : 59
    Points : 41
    Points
    41
    Par défaut C# champ manquant requête WMI
    Bonjour,

    Le projet sur lequel je travaille actuellement comporte 9 environnements et environ 8 serveurs par environnement j'ai un outil qui se connecte aux différents serveurs et intègre les logs EventViewer dans une base de données.
    Cette base est utilisée par un autre outil pour permettre un suivis des serveurs.

    J'utilise le WMI et la requête suivante:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    select * from Win32_NTLogEvent
    Tout fonctionnement correctement sauf:
    J'ai l'erreur suivante dans l'EventViewer (cf ci-dessous) que la requête ci-dessus me retourne avec un champ vide!
    La requête me retourne bien l'enregistrement de cette erreur avec le type de l'erreur, le nom du serveur, la date de l'évènement.... mais la description de l'erreur est vide.

    serveur : Windows serveur 2003
    SQL : SQL Server 2005
    DEV : C# et FrameWork 2

    Savez-vous d'où provient cette erreur? Peut-on la corriger?
    Faut-il utiliser autre chose que le WMI? Si oui, quoi?
    Cela peut-il provenir de la taille du message?

    Je ne sais plus quoi faire. Merci de votre aide

    Event Type: Error
    Event Source: X-X
    Event Category: (000)
    Event ID: 1
    Date: 12/09/2010
    Time: 23:07:39
    User: N/A
    Computer: test0001
    Description:
    The description for Event ID ( 1 ) in Source ( X-X ) cannot be found. The local computer may not have the necessary registry information or message DLL files to display messages from a remote computer. You may be able to use the /AUXSOURCE= flag to retrieve this description; see Help and Support for details. The following information is part of the event: [R6E101]
    Une erreur est survenue lors de la récupération d’une demande, lors de l’appel à** la procédure stockée SPR_aaaa_aa_aaaa_aa_aa, dans la méthode Recupereraaaaaaaaaaaa.

    **********************************
    Message technique : System.Data.SqlClient.SqlException: Subquery returned more than 1 value. This is not permitted when the subquery follows =, !=, <, <= , >, >= or when the subquery is used as an expression.
    at System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection)
    at System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj)
    at System.Data.SqlClient.TdsParser.Run(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj)
    at System.Data.SqlClient.SqlDataReader.HasMoreRows()
    at System.Data.SqlClient.SqlDataReader.ReadInternal(Boolean setTimeout)
    at aaaa.aaaaaa.aa.Sql.aaaa.aa.aaaaaa.Recupéreraaaaaa(String aa, DateTime bb).

  2. #2
    Max
    Max est déconnecté
    Expert éminent sénior

    Avatar de Max
    Homme Profil pro
    Artisan développeur
    Inscrit en
    Mai 2007
    Messages
    2 954
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Artisan développeur
    Secteur : Industrie

    Informations forums :
    Inscription : Mai 2007
    Messages : 2 954
    Points : 14 933
    Points
    14 933
    Par défaut
    Salut.

    Si tu lis bien le message associé à ton event :
    The description for Event ID ( 1 ) in Source ( X-X ) cannot be found.
    Ça me paraît logique que la description que tu récupères soit vide.

    Il y a un delta entre ce que tu vois d'affiché dans l'event viewer et l'objet WMI associé. Par exemple, dans l'event viewer, tu as souvent le message "For additional information specific to this message please visit the Microsoft Online Support site located at...", et tu pourras constater que tu ne le récupères jamais dans le champ Message de Win32_NTLogEvent

  3. #3
    Membre du Club
    Homme Profil pro
    Chef de projet en SSII
    Inscrit en
    Mai 2007
    Messages
    59
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Chef de projet en SSII

    Informations forums :
    Inscription : Mai 2007
    Messages : 59
    Points : 41
    Points
    41
    Par défaut
    Je ne suis pas d'accord.
    Quand j'ouvre l'EventViewer dans la description je vois ça (ci-dessous). Cela signifie donc qu'il y a les informations dans l'EventLog.
    Je ne pense pas que l'EventViewer va rechercher des informations dans plusieurs sources différentes. De plus pour tout les autres messages cela fonctionne.

    Je pense qu'avec Windows on doit pourvoir associer une description avec un EventID mais nous ne l'avons pas mis en place. Je pense donc que c'est pour cela que j'ai dans la description on a "cannot be found". Sinon c'est l'exception levé par le FrameWork qui ne trouve pas sa description.
    Mais dans Message, je devrais au moins avoir
    The local computer may not have the necessary registry information or message DLL files to display messages from a remote computer....
    l'event ID est 6
    la Source est R-6 (je ne pense pas que ça ai une importance)
    The description for Event ID ( 1 ) in Source ( X-X ) cannot be found. The local computer may not have the necessary registry information or message DLL files to display messages from a remote computer. You may be able to use the /AUXSOURCE= flag to retrieve this description; see Help and Support for details. The following information is part of the event: [R6E101]
    Une erreur est survenue lors de la récupération d’une demande, lors de l’appel à** la procédure stockée SPR_aaaa_aa_aaaa_aa_aa, dans la méthode Recupereraaaaaaaaaaaa.

    **********************************
    Message technique : System.Data.SqlClient.SqlException: Subquery returned more than 1 value. This is not permitted when the subquery follows =, !=, <, <= , >, >= or when the subquery is used as an expression.
    at System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection)
    at System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj)
    at System.Data.SqlClient.TdsParser.Run(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj)
    at System.Data.SqlClient.SqlDataReader.HasMoreRows()
    at System.Data.SqlClient.SqlDataReader.ReadInternal(Boolean setTimeout)
    at aaaa.aaaaaa.aa.Sql.aaaa.aa.aaaaaa.Recupéreraaaaaa(String aa, DateTime bb).

Discussions similaires

  1. [AC-2013] Champs manquants à partir de sous-requête
    Par AdiePoppins dans le forum Requêtes et SQL.
    Réponses: 7
    Dernier message: 12/05/2015, 12h31
  2. Réponses: 10
    Dernier message: 09/03/2007, 21h14
  3. sql nouveau champ pour requéte
    Par tabulaire dans le forum Requêtes et SQL.
    Réponses: 2
    Dernier message: 17/08/2006, 16h16
  4. Réponses: 1
    Dernier message: 08/02/2006, 17h17
  5. transmettre valeur d'un champ à une requête
    Par zut94 dans le forum Access
    Réponses: 3
    Dernier message: 13/10/2005, 16h23

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo