Logging, Datei-Operationen, DNS- und NTP-Dienste, Dictionary-Dateien, PID- und Lock-Behandlung, Berichte.
Mehr ...
Logging, Datei-Operationen, DNS- und NTP-Dienste, Dictionary-Dateien, PID- und Lock-Behandlung, Berichte.
_get_file_dict_value |
( |
key |
| ) |
|
Auslesen eines Werts aus einem Schlüssel/Wert-Eingabestrom.
- Parameter
-
- Rückgabe
- Den zum gegebenen Schlüssel gehörenden Wert aus dem Schlüssel/Wert-Eingabestrom Falls kein passender Schlüssel gefunden wurde, dann ist die Ausgabe leer.
Jede Zeile der Standardeingabe enthält einen Feldnamen und einen Wert - beide sind durch ein beliebiges whitespace-Zeichen getrennt. Dieses Dateiformat wird beispielsweise für die Dienst-Zustandsdaten verwendet. Zusätzlich ist diese Funktion auch zum Parsen von openvpn-Konfigurationsdateien geeignet.
Definiert in Zeile 81 der Datei core.sh.
add_banner_event |
( |
event |
, |
|
|
timestamp |
|
|
) |
| |
Füge ein Ereignis zum dauerhaften Ereignisprotokoll (/etc/banner) hinzu.
- Parameter
-
event | Ereignistext |
timestamp | [optional] Der Zeitstempel-Text kann bei Bedarf vorgegeben werden. |
Ein Zeitstempel, sowie hübsche Formatierung wird automatisch hinzugefügt.
Definiert in Zeile 68 der Datei core.sh.
append_to_custom_log |
( |
log_name |
, |
|
|
event |
|
|
) |
| |
Hänge eine neue Nachricht an ein spezfisches Protokoll an.
- Parameter
-
log_name | Name des Log-Ziels |
event | die Kategorie der Meldung (up/down/???, msg) |
msg | die textuelle Beschreibung des Ereignis (z.B. "connection with ... closed") |
Die Meldungen werden beispielsweise von den konfigurierten openvpn-up/down-Skripten gesendet.
Definiert in Zeile 29 der Datei core.sh.
Alle Log-Einträge aus der banner-Datei entfernen.
Definiert in Zeile 71 der Datei core.sh.
get_custom_log_content |
( |
log_name |
| ) |
|
Liefere den Inhalt eines spezifischen Logs (z.B. das OpenVPN-Verbindungsprotokoll) zurück.
- Parameter
-
log_name | Name des Log-Ziels |
- Rückgabe
- Zeilenweise Ausgabe der Protokollereignisse (aufsteigend nach Zeitstempel sortiert).
Definiert in Zeile 39 der Datei core.sh.
get_custom_log_filename |
( |
log_name |
| ) |
|
Liefere den Inhalt eines spezifischen Logs (z.B. das OpenVPN-Verbindungsprotokoll) zurück.
- Parameter
-
log_name | Name des Log-Ziels |
- Rückgabe
- Zeilenweise Ausgabe der Protokollereignisse (aufsteigend nach Zeitstempel sortiert).
Definiert in Zeile 34 der Datei core.sh.
Debug-Meldungen ins syslog schreiben.
- Parameter
-
Die Debug-Nachrichten landen im syslog (siehe logread
). Falls das aktuelle Log-Level bei info
oder niedriger liegt, wird keine Nachricht ausgegeben.
Definiert in Zeile 9 der Datei core.sh.
Die Fehlermeldungen werden in die Standard-Fehlerausgabe und ins syslog geschrieben.
- Parameter
-
Jede Meldung wird mit "ERROR" versehen, damit diese Meldungen von "get_potential_error_messages" erkannt werden. Die error-Nachrichten werden immer ausgegeben, da es kein höheres Log-Level als "debug" gibt.
Definiert in Zeile 22 der Datei core.sh.
Informationen und Fehlermeldungen ins syslog schreiben.
- Parameter
-
Die Nachrichten landen im syslog (siehe logread
). Die info-Nachrichten werden immer ausgegeben, da es kein höheres Log-Level als "debug" gibt.
Definiert in Zeile 15 der Datei core.sh.
Übertrage die Liste der als DNS-Dienst announcierten Server in die dnsmasq-Konfiguration.
Die Liste der DNS-Server wird in die separate dnsmasq-Servers-Datei geschrieben (siehe
- Siehe auch
- DNSMASQ_SERVERS_FILE_DEFAULT). Die Server-Datei wird nur bei Änderungen neu geschrieben. Dasselbe gilt für den Neustart des Diensts. Diese Funktion sollte via olsrd-nameservice-Trigger oder via cron-Job ausgeführt werden.
Definiert in Zeile 55 der Datei core.sh.
update_file_if_changed |
( |
target_filename |
| ) |
|
Aktualisiere eine Datei, falls sich ihr Inhalt geändert haben sollte.
- Parameter
-
target_filename | Name der Zieldatei |
Der neue Inhalt der Datei wird auf der Standardeingabe erwartet. Im Falle der Gleichheit von aktuellem Inhalt und zukünftigem Inhalt wird keine Schreiboperation ausgeführt. Der Exitcode gibt an, ob eine Schreiboperation durchgeführt wurde.
- Rückgabe
- exitcode=0 (Erfolg) falls die Datei geändert werden musste
-
exitcode=1 (Fehler) falls es keine Änderung gab
Definiert in Zeile 49 der Datei core.sh.
Übertrage die Liste der als NTP-Dienst announcierten Server in die sysntpd-Konfiguration.
Die Liste der NTP-Server wird in die uci-Konfiguration geschrieben. Die uci-Konfiguration wird nur bei Änderungen neu geschrieben. Dasselbe gilt für den Neustart des Diensts. Diese Funktion sollte via olsrd-nameservice-Trigger oder via cron-Job ausgeführt werden.
- Siehe auch
- http://wiki.openwrt.org/doc/uci/system#remote_time_ntp
Definiert in Zeile 62 der Datei core.sh.
while read key value { grep "^$key[[:space:]]" "$@" 2>/dev/null || true |