Pulsar: Anlegen eines CPU RAM Profils

Windows

1. Pulsar- und Supervisor-Dienst beenden 
2. Dienstkonfiguration in einer Admin-CMD/PowerShell anpassen:
sc.exe config "Enginsight Pulsar" binpath= "C:\Program Files\Enginsight\Pulsar\ngs-pulsar-amd64.exe -profile"

Das Leerzeichen nach binpath= muss vorhanden sein!

3. Pulsar-Dienst wieder starten

CPU-Profil:

Bei erneutem Auftreten der hohen Last das CPU-Profil wie folgt erstellen, in PowerShell (auf Erhöhung des Timeouts achten, da standardmäßig nur 60s!):

Invoke-WebRequest "http://localhost:6060/debug/pprof/profile?seconds=<sek>" -OutFile profile.out -TimeoutSec <sek+10>

<sek> muss durch die Messdauer in Sekunden ersetzt werden (min. 120 Sekunden!)

RAM-Profil:

Invoke-WebRequest "http://localhost:6060/debug/pprof/heap" -OutFile heap.out

Die hier erzeugte Profil File und Pulsar Logs bitte zukommen lassen.

Die Dienstkonfiguration kann danach wieder zurück geändert werden (Flag -profile entfernen)

Linux

  1. Pulsar-Dienst beenden: 

    sudo systemctl stop ngs-pulsar
  2. Dienstkonfiguration anpassen (/etc/systemd/system/ngs-pulsar.service): an ExecStart -profile anhängen (Ergebnis: ExecStart=/opt/enginsight/pulsar/ngs-pulsar -profile)

  3. Dienstkonfiguration neu laden: 

    sudo systemctl daemon-reload
  4. Pulsar-Dienst starten:

    sudo systemctl start ngs-pulsar

CPU-Profil:

Zeitspanne <sek> ersetzen, min. 120 Sekunden:

curl "http://localhost:6060/debug/pprof/profile?seconds=<sek>" > profile.out
<sek> muss durch die Messdauer in Sekunden ersetzt werden.

RAM-Profil:

curl "http://localhost:6060/debug/pprof/heap" > heap.out

Die hier erzeugte Profil File und Pulsar Logs bitte zukommen lassen.

Die Dienstkonfiguration kann danach wieder zurück geändert werden (Flag -profile entfernen)

Dienstkonfiguration zurücksetzen

Nach Abschluss der Analyse -profile wieder aus der Service-Datei entfernen und:

 
sudo systemctl daemon-reload
sudo systemctl restart ngs-pulsar