2017-03-23 1 views
1

Ich bin mir nicht sicher, ob dies die richtige Seite für diese Frage ist, aber ich habe eine harte Zeit mit Dataloop immer richtig ein Widget auf meinem Powershell-Skript des Exit-Code basierte anzuzeigen.Powershell mit Dataloop/Outlyer

Ich habe gerade angefangen mit Dataloop-Überwachung zu spielen, so dass ich möglicherweise alles falsch mache, aber soweit ich das anhand ihrer Dokumentation feststellen kann, verwenden sie das gleiche Fehlercodesystem wie Nagios und dass diese Fehlercodes zugeordnet werden eine .status-Metrik in Dataloop, mit der Sie Widgets anzeigen können.

Als Test habe ich das folgende Skript Powershell: „Ich nicht das Verzeichnis finden konnte“

if (Test-path c:\scripts02) { 
    Write-Host "I found the directory!" 
    exit 0 
} 
else { 
    Write-Host "I could not find the directory!" 
    exit 2 
} 

Wenn ich das Plugin-Test durch die Dataloop Website laufen, diese ausdruckt die Nachricht mit dem korrekten Beendigungscode von 2. Wenn ich den Pfad ändere, den es in einem vorhandenen Verzeichnis testet, wird es mit 0 und der richtigen Ausgabenachricht beendet. Alles scheint wie erwartet zu funktionieren, bis ich zum nächsten Teil übergehe.

Inside Dataloop, ich würde versuchen, ein Widget hinzuzufügen, legen Sie die Quelle zu einem meiner Agenten, wählen Sie die "Status" Metrik für mein Test-Plugin (das Powershell-Skript). Das Widget erscheint nur mit einem grauen Bildschirm, wenn es grün sein sollte, da der Verzeichnispfad existiert ...

Hat jemand hatte Erfolg mit diesem? Ich überprüfte ihre Dokumentation und versuchte die dort beschriebenen Schritte, hatte aber keinen Erfolg.

Antwort

0

Für jeden, der interessiert ist, das ist eigentlich ein Fehler in der dataloop Agent v1.1. Auf Version 1.3 aktualisiert und Code wird ordnungsgemäß ausgeführt und meldet den richtigen Beendigungscode.

Auf einer Seite zur Kenntnis, hatte ich unter Verwendung der Funktion dataloop zu berichten richtig als auch anstelle des „exit [int]“ in meiner ursprünglichen Code oben zu bekommen:

function ExitWithCode { 
    param($exitcode) 

    $host.SetShouldExit($exitcode) 
    exit 
}