Discussion:
[opennms-deutschland] Umlaute im Windows-Dienst-Namen - HEX-String
Stephan Glotzbach
2015-04-27 12:51:26 UTC
Permalink
Hallo zusammen,

ich bin noch relativ neu im Bereich OpenNMS und bin nun dabei, für unser Unternehmen das System erst einmal grundlegend aufzusetzen. Dazu möchte ich nun unter anderem auch den Status verschiedener Windows-Dienste abfragen. Per snmpwalk habe ich alle Dienste vom Windows Server 2012 R2 Server abgefragt, dort wird z.b. der Dienst "Microsoft Exchange-Einschränkungen" folgendermaßen angezeigt:

.3.6.1.4.1.77.1.2.3.1.1.35.77.105.99.114.111.115.111.102.116.32.69.120.99.104.97.110.103.101.45.69.105.110.115.99.104.114.195.164.110.107.117.110.103.101.110 = Hex-STRING: 4D 69 63 72 6F 73 6F 66 74 20 45 78 63 68 61 6E
67 65 2D 45 69 6E 73 63 68 72 C3 A4 6E 6B 75 6E
67 65 6E

Wie kann ich diesen Dienst nun abfragen? Den Exchange-Dienst "Microsoft Exchange-Dateiverteilung" sieht über snmpwalk so aus:

.3.6.1.4.1.77.1.2.3.1.1.34.77.105.99.114.111.115.111.102.116.32.69.120.99.104.97.110.103.101.45.68.97.116.101.105.118.101.114.116.101.105.108.117.110.103 = STRING: "Microsoft Exchange-Dateiverteilung"

Die Dienstabfrage selbst sieht wie folgt aus:

<<default-foreign-source.xml>>
-------------------------------------------------------------
<detector name="Microsoft Exchange-Dateiverteilung (Windows-Dienst)" class="org.opennms.netmgt.provision.detector.snmp.Win32ServiceDetector">
<parameter key="win32ServiceName" value="Microsoft Exchange-Dateiverteilung"/>
<parameter key="serviceName" value="Microsoft Exchange-Dateiverteilung"/>
<parameter key="retries" value="1"/>
<parameter key="timeout" value="2000"/>
</detector>
-------------------------------------------------------------

<<poller-configuration.xml>>
-------------------------------------------------------------
<service name="Microsoft Exchange-Dateiverteilung (Windows-Dienst)" interval="300000" user-defined="false" status="on">
<parameter key="retry" value="6" />
<parameter key="timeout" value="4950" />
<parameter key="port" value="161" />
<parameter key="service-name" value="Microsoft Exchange-Dateiverteilung" />
</service>
....
<monitor service="Microsoft Exchange-Dateiverteilung (Windows-Dienst)" class-name="org.opennms.netmgt.poller.monitors.Win32ServiceMonitor" />
-------------------------------------------------------------

Diese Vorgehensweise funktioniert auch, der Dienst wird erkannt.

Wie kann ich einen HEX-String einsetzen? Das Prozedere wird im OpenNMS-Wiki nicht näher erläutert.
Stephan Glotzbach
2015-04-27 13:47:58 UTC
Permalink
Nochmal die Nur-Text-Fassung, nachdem ich vergessen hatte, die Formatierung zu ändern. :)


Hallo zusammen,

ich
bin noch relativ neu im Bereich OpenNMS und bin nun dabei, für unser
Unternehmen das System erst einmal grundlegend aufzusetzen. Dazu möchte
ich nun unter anderem auch den Status verschiedener Windows-Dienste
abfragen. Per snmpwalk habe ich alle Dienste vom Windows Server 2012 R2
Server abgefragt, dort wird z.b. der Dienst "Microsoft
Exchange-Einschränkungen" folgendermaßen angezeigt:

.3.6.1.4.1.77.1.2.3.1.1.35.77.105.99.114.111.115.111.102.116.32.69.120.99.104.97.110.103.101.45.69.105.110.115.99.104.114.195.164.110.107.117.110.103.101.110
= Hex-STRING: 4D 69 63 72 6F 73 6F 66 74 20 45 78 63 68 61 6E
67 65 2D 45 69 6E 73 63 68 72 C3 A4 6E 6B 75 6E
67 65 6E

Wie kann ich diesen Dienst nun abfragen? Den Exchange-Dienst "Microsoft Exchange-Dateiverteilung" sieht über snmpwalk so aus:

.3.6.1.4.1.77.1.2.3.1.1.34.77.105.99.114.111.115.111.102.116.32.69.120.99.104.97.110.103.101.45.68.97.116.101.105.118.101.114.116.101.105.108.117.110.103
= STRING: "Microsoft Exchange-Dateiverteilung"

Die Dienstabfrage selbst sieht wie folgt aus:

<<default-foreign-source.xml>>
-------------------------------------------------------------
 <detector
name="Microsoft Exchange-Dateiverteilung (Windows-Dienst)"
class="org.opennms.netmgt.provision.detector.snmp.Win32ServiceDetector">
         <parameter key="win32ServiceName" value="Microsoft Exchange-Dateiverteilung"/>
         <parameter key="serviceName" value="Microsoft Exchange-Dateiverteilung"/>
         <parameter key="retries" value="1"/>
         <parameter key="timeout" value="2000"/>
      </detector>
-------------------------------------------------------------

<<poller-configuration.xml>>
-------------------------------------------------------------
<service name="Microsoft Exchange-Dateiverteilung (Windows-Dienst)" interval="300000" user-defined="false" status="on">
      <parameter key="retry" value="6" />
      <parameter key="timeout" value="4950" />
      <parameter key="port" value="161" />
      <parameter key="service-name" value="Microsoft Exchange-Dateiverteilung" />
    </service>
....
<monitor
service="Microsoft Exchange-Dateiverteilung (Windows-Dienst)"
class-name="org.opennms.netmgt.poller.monitors.Win32ServiceMonitor"
/>
-------------------------------------------------------------

Diese Vorgehensweise funktioniert auch, der Dienst wird erkannt.

Wie kann ich einen HEX-String einsetzen? Das Prozedere wird im OpenNMS-Wiki nicht näher erläutert.

Vielen Dank schonmal im Voraus und viele Grüße

Stephan
Fuhrmann, Marcel
2015-05-04 07:10:13 UTC
Permalink
Hi Stephan,

eigentlich wollte ich dir grad ein riesen Howto hier schreiben, denn ich hätte schwören können, dass das ohne Probleme funktionieren muss. Ich habe es aber eben in v15.0.2 getestet und bei mir macht ONMS auch Probleme mit den Umlauten.

Wir hatten schon mal so einen Heckmeck mit deutschen SNMP Traps: http://issues.opennms.org/browse/NMS-5281
Die dt. Mailingliste lesen leider nur sehr wenige. Um einen Lösungsansatz zu der HEX Sache zu bekommen, würde ich dich bitten, einen Q/A http://ask.opennms.eu/ zu erstellen oder der US Mailingliste zu schreiben.
Ein Ticket wegen der allg. Problematik wäre auch super: http://issues.opennms.org/secure/Dashboard.jspa

Gruß
Marcel

Loading...