You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: src/onprem/de/devel_special_agents.asciidoc
+10-11Lines changed: 10 additions & 11 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,7 +1,6 @@
1
1
// -*- coding: utf-8 -*-
2
2
// IGNORE Anwendungs
3
3
// NONASCII °
4
-
// SKIPCOMMITS 2025-09-02
5
4
include::global_attr.adoc[]
6
5
= Spezialagenten entwickeln
7
6
:revdate: 2025-02-24
@@ -13,7 +12,7 @@ xref:devel_intro#[Erweiterungen für {CMK} entwickeln]
13
12
xref:datasource_programs#[Datenquellprogramme]
14
13
xref:wato_monitoringagents#[Monitoring-Agenten]
15
14
xref:wato_services#[Services verstehen und konfigurieren]
16
-
xref:cmk_commandline#[{CMK} auf der Kommandozeile]
15
+
xref:cmk_commandline#[{CMK} auf der Befehlszeile]
17
16
xref:mkps#[{CMK}-Erweiterungspakete (MKPs)]
18
17
{related-end}
19
18
@@ -33,7 +32,7 @@ Danach beendet sich der Spezialagent.
33
32
Dies erlaubt es Ihnen, Spezialagenten in beliebigen Programmiersprachen zu implementieren.
34
33
Allerdings bedeuten kurz laufende Prozesse, dass _Just-in-time_-kompilierte Sprachen wie Java eher weniger geeignet sind als kompilierte Sprachen oder schnell startende interpretierte Sprachen.
35
34
36
-
Die Konfiguration der gestarteten Prozesse erfolgt über Kommandozeilenparameter beim Aufruf des Spezialagenten.
35
+
Die Konfiguration der gestarteten Prozesse erfolgt über Befehlszeilenparameter beim Aufruf des Spezialagenten.
37
36
Hierfür bestimmen Sie, in welcher Weise GUI-Elemente wie Texteingabefelder oder Checkboxen auf bestimmte Parameter abgebildet werden.
38
37
39
38
Die Code-Beispiele dieses Artikels finden Sie in unserem link:https://github.com/Checkmk/checkmk-docs/tree/2.3.0/examples/devel_special_agents[GitHub-Repository^] und den fertig gebauten Open-Meteo-Spezialagenten zudem als link:https://exchange.checkmk.com/p/ometemp[MKP in der {CMK}-Exchange^].
@@ -219,7 +218,7 @@ Wie im vorherigen Beispiel legen Sie als erstes die xref:prepare_env[benötigten
219
218
220
219
Jetzt, wo echte Daten verarbeitet werden sollen, müssen Sie sich zudem einige Gedanken machen, beispielsweise zur Programmiersprache und der Vorverarbeitung.
221
220
Unser Beispiel fragt eine öffentliche API ab und erhält JSON-Daten.
222
-
Das könnte man in der Shell mit einem `curl`-Kommando erledigen.
221
+
Das könnte man in der Shell mit einem `curl`-Befehl erledigen.
223
222
Da aber {CMK} ein gut ausgestattetes Python mitbringt, liegt es nahe, dieses zu verwenden.
224
223
225
224
Die nächste Entscheidung betrifft die Aufarbeitung der Daten.
@@ -232,8 +231,8 @@ Letzteres ist dann der Fall, wenn Daten so aufbereitet werden können, dass sie
232
231
233
232
Unser Beispiel reicht die JSON-Antwort einfach durch.
234
233
Das Parsen findet dann im agentenbasierten Check-Plugin statt.
235
-
Die Übergabe von Längen- und Breitengrad erfolgt durch die Kommandozeilenargumente `--latitude` und `--longitude`.
236
-
Um Kommandozeilenargumente besser einlesen zu können, verwenden wir die Bibliothek `argparse`.
234
+
Die Übergabe von Längen- und Breitengrad erfolgt durch die Befehlszeilenargumente `--latitude` und `--longitude`.
235
+
Um Befehlszeilenargumente besser einlesen zu können, verwenden wir die Bibliothek `argparse`.
237
236
Da Open-Meteo den Längen- und Breitengrad in die URL kodiert unterstützt, genügt eine URL mit Platzhaltern.
238
237
Probieren Sie diese URL mit _Ihrem aktuellen_ Längen- und Breitengrad ruhig einmal im Browser aus.
239
238
@@ -273,14 +272,14 @@ Zur Erinnerung: Dieses Skript darf keine Dateiendung haben.
273
272
====
274
273
275
274
Die Agentensektion `ometemp` enthält schlussendlich nur das empfangene JSON-Objekt.
276
-
Testen Sie den Spezialagenten, indem Sie ihn auf der Kommandozeile aufrufen.
275
+
Testen Sie den Spezialagenten, indem Sie ihn auf der Befehlszeile aufrufen.
0 commit comments