Mithilfe dieser benutzerdefinierten Discovery-Probe können Sie eine Textdatei von einem Windows-Computer lesen und ein CI in der CMDB mit den Werten aus der Datei füllen.
Vorbereitungen
Erforderliche Rolle: Administrator
Warum und wann dieser Vorgang ausgeführt wird
In diesem Beispiel wollte der Benutzer von
BGinfo erstellte Dateien lesen.
Hinweis: Wenn Sie die Probe und den Sensor abgeschlossen haben, platzieren Sie die Probe in der entsprechenden Windows-Klassifizierung unter an.
Prozedur
-
Navigieren zu , Und klicken Sie dann auf Neu .
-
Füllen Sie die folgenden Felder aus:
- Name: Eindeutiger und beschreibender Name für die Probe
- Probe-Typ: Wählen Sie Probe aus.
- Beschreibung: Beschreiben Sie die Funktionalität dieser Probe.
- Verwendet von Discovery: Aktivieren Sie dieses Kontrollkästchen.
- ECC-Warteschlangenthema: Der Name der Probe, die der MID Server ausführen soll. In diesem Beispiel wird WMIRunner verwendet.
- ECC-Warteschlangenname: In diesem Beispiel wird der beschreibende Name WMI: BGInfo files verwendet.
-
yxcvbnm,ooiuztreq12345tKlicken Sie mit der rechten Maustaste auf die Kopfzeile und wählen Sie Speichern aus dem Kontextmenü.
-
Wechseln Sie im Probe-Formular zur Registerkarte „Probe Parameter“, und klicken Sie auf Neu.
-
Geben Sie WMI_GetFiles.js als Namen für diesen Parameter ein.
-
Kopieren Sie das folgende Skript in das Feld Skript, und bearbeiten Sie es nach Bedarf.
-
Klicken Sie auf Absenden.
//
// Use ServiceNow WMIAPI to gather stats
//
var CMD_RETRIES = 3;
var scanner = getScanner();
if (scanner) {
var output = "";
for(var i = 0; i < CMD_RETRIES; i++) {
output = scanner.winExec("%SystemRoot%\\system32\\cmd.exe /C type \\\"C:\\Information Systems\\BgInfo\\*.txt\\\"");
if (output)
break;
}
scanner.appendToRoot("output", output);
}
-
Navigieren zu , Und klicken Sie dann auf Neu .
Füllen Sie die folgenden Felder aus:
- Name: Verwenden Sie den Namen der entsprechenden Probe. In diesem Beispiel wird Windows - Get BGInfo files verwendet.
- Reagiert auf Probe: Der Name der im vorherigen Verfahren erstellten Probe: Windows - Get BGInfo files
- Sensortyp: Wählen Sie den Typ des zu erstellenden Sensors aus, in diesem Beispiel Sensor.
- Beschreibung: Beschreibt die Funktion dieses Sensors
- Skript: Kopieren Sie das folgende Skript in das Feld Skript, und bearbeiten Sie es nach Bedarf.
- Sensortyp: Bestimmt, wie die Antwort der Probe verarbeitet wird - in diesem Beispiel JavaScript
-
Klicken Sie auf Absenden.
new DiscoverySensor({ data: {}, process: function(result) {
this.parseOutput(result.output);
this.update(this.data);
},
parseOutput: function(output) {
var currentFile;
var files = {};
if (output.startsWith("<wmi")) {
var bgout = new XMLHelper(output).toObject();
if (!bgout)
return;
output = bgout.output;
}
var lines = output.split(/\n/);
for(var i = 0; i < lines.length; i++) {
var line = lines[i];
if (line.startsWith("C:\\Information Systems\\BgInfo\\")) {
currentFile = line.substr(30);
files[currentFile] = "";
} else if (currentFile) {
var newLine = line.trim();
if (newLine)
files[currentFile] += (files[currentFile]? "\n" : "") + newLine;
}
}
this.data['u_jack_id'] = files['JackID.txt'];
this.data['warranty_expiration'] = files['Warranty.txt'];
this.data['po_number'] = files['Ponum.txt'];},
type: "DiscoverySensor"
});