Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Off Topic
  4. InfluxDB
  5. Pflege der InfluxDB

NEWS

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    16
    1
    986

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    694

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.0k

Pflege der InfluxDB

Geplant Angeheftet Gesperrt Verschoben InfluxDB
44 Beiträge 7 Kommentatoren 170 Aufrufe 6 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde aufgespalten von backitup Speicherort Homoran
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • L Offline
    L Offline
    Laser
    schrieb am zuletzt editiert von Laser
    #23

    Ich habe die Benutzeroberfläche der influxDB geöffnet. Im Data Explorer suche ich z.B. nach "storage". Alle Measurements mit "storage" werden gelistet. Das zu löschende ist immer wieder vorhanden. Auch mit alter Zeit.![Bild Text](5a2c9de7-9ac1-4346-89d8-c97b64c2a625-image.png Bild Link)

    Marc BergM 1 Antwort Letzte Antwort
    0
    • L Laser

      Ich habe die Benutzeroberfläche der influxDB geöffnet. Im Data Explorer suche ich z.B. nach "storage". Alle Measurements mit "storage" werden gelistet. Das zu löschende ist immer wieder vorhanden. Auch mit alter Zeit.![Bild Text](5a2c9de7-9ac1-4346-89d8-c97b64c2a625-image.png Bild Link)

      Marc BergM Offline
      Marc BergM Offline
      Marc Berg
      Most Active
      schrieb am zuletzt editiert von
      #24

      @Laser sagte in backitup Speicherort:

      Das zu löschende ist immer wieder vorhanden

      Die Liste wird erst nach einem richtigen Refresh der Seite aktualisiert.

      NUC10I3+Ubuntu+Docker+ioBroker+influxDB2+Node Red+EMQX+Grafana

      Pi-hole, Traefik, Checkmk, Conbee II+Zigbee2MQTT, ESPSomfy-RTS, LoRaWAN, Arduino, KiCad

      Benutzt das Voting im Beitrag, wenn er euch geholfen hat.

      1 Antwort Letzte Antwort
      0
      • L Offline
        L Offline
        Laser
        schrieb am zuletzt editiert von
        #25

        Das mache ich. (der Kreispfeil links oben). Auch schon das ganze System neu gestartet.

        1 Antwort Letzte Antwort
        0
        • Marc BergM Marc Berg

          @Laser sagte in backitup Speicherort:

          OK. keine Wildcards. Direkt eingegeben:
          influx delete --bucket iobroker --token KTLmduvh_2ocvh25GueyRrQmob_hcMaVqg2XJUnEuE2iFYhhretw-PtP-sBEAsQiQOD0u68fhpwFnmrBAZeXYZ== --org privat --start 1970-01-01T00:00:00Z --stop '2030-12-31T23:59:59Z' --predicate '_measurement="storage_bucket_measurement_num"'

          löscht auch nicht.

          Hm, dann sollte das gehen. Wie stellst du fest, dass das Measurement nicht gelöscht wurde? Und ist der Scraper gelöscht?

          Marc BergM Offline
          Marc BergM Offline
          Marc Berg
          Most Active
          schrieb am zuletzt editiert von Marc Berg
          #26

          Dann fällt mir nur noch ein:

          Und ist der Scraper gelöscht?

          Der würde nämlich sofort die Measurements wieder anlegen.

          EDIT: und in deinem Screenshot sehe ich das Measurement "storage_bucket_measurement_num" nicht.

          NUC10I3+Ubuntu+Docker+ioBroker+influxDB2+Node Red+EMQX+Grafana

          Pi-hole, Traefik, Checkmk, Conbee II+Zigbee2MQTT, ESPSomfy-RTS, LoRaWAN, Arduino, KiCad

          Benutzt das Voting im Beitrag, wenn er euch geholfen hat.

          1 Antwort Letzte Antwort
          0
          • L Offline
            L Offline
            Laser
            schrieb am zuletzt editiert von
            #27

            Ich glaube, ich mache einen Fehler. Das Measurement, welches ich gelöscht habe ist weg. Das Andere heißt nur ähnlich. Werde jetzt Alle händisch löschen. Scraper ist gelöscht.

            1 Antwort Letzte Antwort
            0
            • HomoranH Nicht stören
              HomoranH Nicht stören
              Homoran
              Global Moderator Administrators
              schrieb am zuletzt editiert von
              #28

              ich hab das mal abgetrennt und verschoben
              hat ja mit bsckitup nichts mehr zu tun.

              hoffentlich hab ich nichts vergessen

              kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

              Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

              der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

              1 Antwort Letzte Antwort
              1
              • L Offline
                L Offline
                Laser
                schrieb am zuletzt editiert von
                #29

                OK. Das ist richtig. Über backitup bin ich nur drauf gekommen, weil die Datenbank so riesig war und backitup streikte. Wo ist es denn jetzt?

                HomoranH 1 Antwort Letzte Antwort
                0
                • L Laser

                  OK. Das ist richtig. Über backitup bin ich nur drauf gekommen, weil die Datenbank so riesig war und backitup streikte. Wo ist es denn jetzt?

                  HomoranH Nicht stören
                  HomoranH Nicht stören
                  Homoran
                  Global Moderator Administrators
                  schrieb am zuletzt editiert von
                  #30

                  @Laser sagte in Pflege der InfluxDB:

                  Wo ist es denn jetzt?

                  hier

                  kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

                  Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                  der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

                  1 Antwort Letzte Antwort
                  1
                  • L Laser

                    Mein NAS ist ein Eigenbau mit Banana Pi. Und openmediavault. Da kann ich nur Version3 auswählen. Keine Unterversion. Wenn das Backup fertig ist, stelle ich im Backitup auf 3.1.1. Möchte jetzt nicht eingreifen. Die Datenbank ist wirklich riesig. Und wächst unaufhaltsam. Vermutlich speichere ich immer noch unnötig viele Daten. Ändern- da habe ich Bedenken, daß Alles auf einmal weg ist.

                    fuzzy1955F Online
                    fuzzy1955F Online
                    fuzzy1955
                    schrieb am zuletzt editiert von fuzzy1955
                    #31

                    @Laser sagte in Pflege der InfluxDB:

                    Ändern- da habe ich Bedenken, daß Alles auf einmal weg ist

                    Hi,

                    die InfluxDB kann man doch auch mit SQL-Befehlen bedienen, soweit ich aus der Doku sehe. Ich verwende als langjähriger SQL-Datenbank-Entwickler lieber die mysql, aber die Befehlsstruktur ist sehr ähnlich:

                    mysql:
                    SELECT * FROM iobroker.ts_number WHERE ts <= xxxxxxxx;
                    
                    Zum Löschen alter Daten **(VORSICHT, DATENBANK VORHER UNBEDINGT SICHERN!!)**
                    DELETE FROM iobroker.ts_number WHERE ts <= xxxxxxxx;
                    
                    InfluxDB:
                    SELECT * FROM "absolutismus" WHERE time = '2016-07-31T20:07:00Z'
                    

                    Der IOB sammelt die Daten [Edit Begin] aller Datenpunkte, bei denen die DB-Speicherung aktiviert ist, [Edit end] in der Datenbank-Tabelle "ts_number" und diese wird schnell sehr groß, wenn man im Sekundentakt speichert. Mein Backup zur mysql-DB hat jetzt nach einem Jahr etwa 4 MB.

                    Die 2 wichtigsten Tabellen sind:
                    MySQL.jpg

                    In der Tabelle "datapoints" legt der IOB die Datenpunkte bei denen die DB-Speicherung aktiviert ist, als Referenz zur Tabelle "ts_Number" an:
                    MySQL2.jpg

                    Und damit kann man die Datenmengen schon gut im Zaum halten ;-) Vielleicht hilft euch das etwas. Fragen generell zu SQL kann ich gern beantworten.

                    Gruß, Fuzzy

                    Raspberry PI5 mit Linux Debian 13, IoBroker v7.7.19, VIS-2, MariaDB (MySQL)
                    Shellies: 1G4, 1MiniG3, PlusI4DC, PlusPlugS, Pro0110PM, ProSmoke. Modbus: Waveshare Relay 8 Channels, Waveshare RS485-TO-ETH.
                    PV: 10 kWp Module, 2 x Deye WR SUN-10K, 2 x 10 kWh MeritSun LiFe Speicher, KEBA P30 Wallbox, Fronius Wattpilot home 11

                    fuzzy1955F 1 Antwort Letzte Antwort
                    0
                    • L Offline
                      L Offline
                      Laser
                      schrieb am zuletzt editiert von
                      #32

                      Das wäre wieder eine neue Baustelle. Die alte habe ich noch nicht im Griff!

                      fuzzy1955F 1 Antwort Letzte Antwort
                      0
                      • L Laser

                        Das wäre wieder eine neue Baustelle. Die alte habe ich noch nicht im Griff!

                        fuzzy1955F Online
                        fuzzy1955F Online
                        fuzzy1955
                        schrieb am zuletzt editiert von
                        #33

                        @Laser sagte in Pflege der InfluxDB:

                        Das wäre wieder eine neue Baustelle

                        Umstellen würde ich auch nicht. Aber wenn die Ähnlichkeiten zwischen InfluxDB und MYSQL sehr ähnlich sind, könntest du das Knowhow von mysql nutzen. Ich werde mal auf meinem Testsystem die InfluxDB ansehen.

                        Raspberry PI5 mit Linux Debian 13, IoBroker v7.7.19, VIS-2, MariaDB (MySQL)
                        Shellies: 1G4, 1MiniG3, PlusI4DC, PlusPlugS, Pro0110PM, ProSmoke. Modbus: Waveshare Relay 8 Channels, Waveshare RS485-TO-ETH.
                        PV: 10 kWp Module, 2 x Deye WR SUN-10K, 2 x 10 kWh MeritSun LiFe Speicher, KEBA P30 Wallbox, Fronius Wattpilot home 11

                        1 Antwort Letzte Antwort
                        0
                        • MartinPM Online
                          MartinPM Online
                          MartinP
                          schrieb am zuletzt editiert von MartinP
                          #34

                          Ich habe diese Baustelle auch, aber das Anwachsen der Datenbank ist bei mir aufgrund dessen beschränkt, dass mein iobroker bucket in der influx Datenbank eine Retain-Zeit von einem Jahr hat.
                          b89de578-52e6-4394-ae1b-9ebd09bece81-image.png
                          Wenn man Daten für ein Jahr aufgehäuft hat, und keine neuen Datenreihen hinzugekommen sind, sollte DIESES Bucket nicht mehr größer werden, weil hinten so viele Daten herausfallen, wie vorne neu hinzukommen...

                          Hatte mir eigentlich vorgenommen, weitere "Langzeit" Buckets anzulegen, in die gewisse Datenreihen durch Agenten aus dem Jahres-Bucket vor dem Löschen transferiert werden.

                          Nach drei Jahren interessiert es nicht mehr wie die Momentan-Leistungsaufnahme am Stromzähler am 15.2.2023 um 16:30 war ... Da will man vielleicht noch wissen, wie viel Strom im Februar 2023 verbraucht worden ist ....

                          Bin aber bisher nicht dazu gekommen ...

                          Seit Dezember ist meine alte Gasheizung durch eine Wärmepumpe ersetzt, und jetzt wird es eigentlich dringend, man will ja vergleichen, was die Energieverbräuche angeht ... und wenn die Gas-Messreihen langsam weggefressen werden ....

                          https://docs.influxdata.com/influxdb/v2/process-data/common-tasks/downsample-data/

                          Intel(R) Celeron(R) CPU N3000 @ 1.04GHz 8G RAM 480G SSD
                          Virtualization : unprivileged lxc container (debian 12 on Proxmox 8.4.14)
                          Linux pve 6.8.12-16-pve
                          6 GByte RAM für den Container
                          Fritzbox 6591 FW 8.03 (Vodafone Leih-Box)
                          Remote-Access über Wireguard der Fritzbox

                          1 Antwort Letzte Antwort
                          0
                          • L Offline
                            L Offline
                            Laser
                            schrieb am zuletzt editiert von
                            #35

                            Ich habe 2 Jahre eingestellt. Wenn das handelbar ist, reicht mir das. Es sind immer noch viel zu viele Werte zu oft geloggt.

                            1 Antwort Letzte Antwort
                            0
                            • L Offline
                              L Offline
                              Laser
                              schrieb am zuletzt editiert von Laser
                              #36

                              Fehler12234

                              1 Antwort Letzte Antwort
                              0
                              • fuzzy1955F fuzzy1955

                                @Laser sagte in Pflege der InfluxDB:

                                Ändern- da habe ich Bedenken, daß Alles auf einmal weg ist

                                Hi,

                                die InfluxDB kann man doch auch mit SQL-Befehlen bedienen, soweit ich aus der Doku sehe. Ich verwende als langjähriger SQL-Datenbank-Entwickler lieber die mysql, aber die Befehlsstruktur ist sehr ähnlich:

                                mysql:
                                SELECT * FROM iobroker.ts_number WHERE ts <= xxxxxxxx;
                                
                                Zum Löschen alter Daten **(VORSICHT, DATENBANK VORHER UNBEDINGT SICHERN!!)**
                                DELETE FROM iobroker.ts_number WHERE ts <= xxxxxxxx;
                                
                                InfluxDB:
                                SELECT * FROM "absolutismus" WHERE time = '2016-07-31T20:07:00Z'
                                

                                Der IOB sammelt die Daten [Edit Begin] aller Datenpunkte, bei denen die DB-Speicherung aktiviert ist, [Edit end] in der Datenbank-Tabelle "ts_number" und diese wird schnell sehr groß, wenn man im Sekundentakt speichert. Mein Backup zur mysql-DB hat jetzt nach einem Jahr etwa 4 MB.

                                Die 2 wichtigsten Tabellen sind:
                                MySQL.jpg

                                In der Tabelle "datapoints" legt der IOB die Datenpunkte bei denen die DB-Speicherung aktiviert ist, als Referenz zur Tabelle "ts_Number" an:
                                MySQL2.jpg

                                Und damit kann man die Datenmengen schon gut im Zaum halten ;-) Vielleicht hilft euch das etwas. Fragen generell zu SQL kann ich gern beantworten.

                                Gruß, Fuzzy

                                fuzzy1955F Online
                                fuzzy1955F Online
                                fuzzy1955
                                schrieb am zuletzt editiert von fuzzy1955
                                #37

                                sagte in Pflege der InfluxDB:

                                Und damit kann man die Datenmengen schon gut im Zaum halten

                                Weitere Tipps zur Vermeidung der Datenflut:

                                Erstellen einer neuen Datenbanktabelle "statistik".
                                MySQL3.jpg

                                 CREATE TABLE iobroker.statistik(  
                                	id INTEGER NOT NULL AUTO_INCREMENT,
                                	name TEXT NOT NULL,
                                	date DATETIME NOT NULL,
                                	val INT NOT NULL,
                                PRIMARY KEY (id,date)) ENGINE = InnoDB;
                                
                                CREATE INDEX IX_statistik01 ON iobroker.statistik(name);
                                

                                [Edit] Erstellen eines JavaScripts "Jahresabschluss" (läuft nur einmal im Jahr am 2.1.):

                                const idStatistikdaten = 'alias.0.Diagrammdaten.Statistikdaten';
                                
                                let dtHeute = new Date(Date.now());
                                let intVJahr = dtHeute.getFullYear() - 1;
                                let intVVJahr = dtHeute.getFullYear() - 2;
                                let strSQL;
                                let IntAnzDS = 0;
                                
                                function sendToPromise(iSQL) { 
                                    return new Promise((resolve, reject) => { 
                                        sendTo('sql.0', 'query', iSQL, function (result) {
                                            try {
                                                IntAnzDS = JSON.stringify(result.result);
                                                IntAnzDS = JSON.stringify(result.result);
                                                IntAnzDS = IntAnzDS.replace('[{"AnzahlDS":', '');
                                                IntAnzDS = Number(IntAnzDS.replace('}]', ''));
                                                resolve(IntAnzDS); 
                                            } catch {
                                                console.error(result.error);
                                            }
                                        });
                                    }); 
                                } 
                                
                                //------------- Prüfen, ob Vorjahresdaten in der Statistik bereits vorhanden sind -> Abbruch --------------------------------
                                (async () => { 
                                    try {
                                        strSQL = "SELECT COUNT(id) as AnzahlDS FROM iobroker.statistik WHERE DATE_FORMAT(date, '%Y') = " + intVJahr + ";";
                                        const res = await sendToPromise(strSQL); 
                                        //const count = Number(res?.result?.[0]?.AnzahlDS ?? res?.rows?.[0]?.AnzahlDS ?? 0);
                                        //console.log('AnzahlDS:'+ IntAnzDS); 
                                        await DatenbankAktualisieren(IntAnzDS); 
                                    } 
                                    catch (err) {
                                        console.error('Fehler:', err); 
                                    } 
                                })();
                                
                                
                                function DatenbankAktualisieren (iCount) {
                                
                                    if (iCount == 0) {
                                
                                        //------------- JahresMonatsdaten in die Tabelle iobroker.statistik verdichten --------------------------------
                                
                                        strSQL = "INSERT INTO iobroker.statistik (id, name, date, val) " +
                                            "SELECT id, name, DATE_FORMAT(tsDate, '%Y-%m-01 00:00:00') as Datum, CONVERT(SUM(val), INT) as val " +
                                            "FROM iobroker.vw_number " +
                                            "WHERE DATE_FORMAT(tsDate, '%Y') = " + intVJahr + " " +
                                            "GROUP BY id, name, DATE_FORMAT(tsDate, '%Y-%m') " +
                                            "ORDER  BY id, name, DATE_FORMAT(tsDate, '%Y-%m');";
                                
                                        sendTo('sql.0', 'query', strSQL, function (result) {
                                            if (result.error) {
                                                console.error(result.error);
                                            } else {
                                                setState (idStatistikdaten,JSON.stringify(result.result));
                                            }
                                        });
                                
                                        //------------- alte JahresMonatsdaten löschen --------------------------------
                                
                                        strSQL = "DELETE FROM iobroker.ts_number WHERE SUBSTRING(from_unixtime(SUBSTRING(ts, 1, 10)),1,4) = " + intVVJahr + ";";
                                        sendTo('sql.0', 'query', strSQL, function (result) {
                                            if (result.error) {
                                                console.error(result.error);
                                            } else {
                                                console.log("Die Daten des Jahres " + intVVJahr + " wurden gelöscht.");
                                            }
                                        });
                                
                                        console.log("Die Daten von " + intVJahr + " wurden in  die Tabelle statistik verdichtet angefügt (YYYY-MM-01)");
                                        
                                    } else {
                                         console.log("Das Jahr " + intVJahr + " wurde bereits abgeschlossen ");
                                    }
                                }
                                
                                

                                [Edit] Mit der Tabelle "statistiken" lassen sich nahezu beliebig viele Vorjahre auswerten oder in Diagrammen darstellen. Natürlich kann man die Abfragebedingungen erweitern, so dass nur bestimmte Datenpunkte in die Statistiktabelle laufen (z.B. WHERE id in (1,25,67,123,555 ...).

                                Fragen zu SQL-Datenbanken kann ich gern beantworten.

                                Gruß, Fuzzy

                                Raspberry PI5 mit Linux Debian 13, IoBroker v7.7.19, VIS-2, MariaDB (MySQL)
                                Shellies: 1G4, 1MiniG3, PlusI4DC, PlusPlugS, Pro0110PM, ProSmoke. Modbus: Waveshare Relay 8 Channels, Waveshare RS485-TO-ETH.
                                PV: 10 kWp Module, 2 x Deye WR SUN-10K, 2 x 10 kWh MeritSun LiFe Speicher, KEBA P30 Wallbox, Fronius Wattpilot home 11

                                1 Antwort Letzte Antwort
                                0
                                • L Offline
                                  L Offline
                                  Laser
                                  schrieb am zuletzt editiert von Laser
                                  #38

                                  Ich habe jetzt alle unnötig vom Scraper generierten Measurements einzeln gelöscht. Viel Arbeit. Jetzt bin ich bei etwa 9GB Datenbankbackup angelangt. Damit scheint das Backup klar zu kommen.

                                  1 Antwort Letzte Antwort
                                  0
                                  • B Online
                                    B Online
                                    bloop
                                    schrieb am zuletzt editiert von
                                    #39

                                    Ich habe vor einiger Zeit ein Skript zum Löschen Alter InfuxDB Measurements geschrieben. Dieses kann Datenpunkte die nicht mehr aktualisiert werden recht einfach löschen. Eventuell hilft euch dies weiter. 😜

                                    https://forum.iobroker.net/topic/80965/influxdb-alten-datenmüll-löschen

                                    1 Antwort Letzte Antwort
                                    0
                                    • L Offline
                                      L Offline
                                      Laser
                                      schrieb am zuletzt editiert von Laser
                                      #40

                                      Da müssen aber erst mal die richtigen Measurements im Script stehen. Gelöscht wird nur, wenn der Text absolut übereinstimmt.

                                      B 1 Antwort Letzte Antwort
                                      0
                                      • L Laser

                                        Da müssen aber erst mal die richtigen Measurements im Script stehen. Gelöscht wird nur, wenn der Text absolut übereinstimmt.

                                        B Online
                                        B Online
                                        bloop
                                        schrieb am zuletzt editiert von
                                        #41

                                        @Laser
                                        Das Skript analysiert deine Datenbank auf Measurements welche älter als x nicht mehr beschrieben wurden. (Kannst du definieren)
                                        Und fragt dann welche Measurements gelöscht werden sollen.

                                        1 Antwort Letzte Antwort
                                        0
                                        • L Offline
                                          L Offline
                                          Laser
                                          schrieb am zuletzt editiert von Laser
                                          #42

                                          Geht das dann schneller als die manuelle Auswahl mit drag und drop in den Editor und dann auf die Konsole kopiert? Das Bereinigen hat bei mir etwa 2h gedauert.

                                          B 1 Antwort Letzte Antwort
                                          0
                                          Antworten
                                          • In einem neuen Thema antworten
                                          Anmelden zum Antworten
                                          • Älteste zuerst
                                          • Neuste zuerst
                                          • Meiste Stimmen


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          397

                                          Online

                                          32.6k

                                          Benutzer

                                          82.0k

                                          Themen

                                          1.3m

                                          Beiträge
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Anmelden

                                          • Du hast noch kein Konto? Registrieren

                                          • Anmelden oder registrieren, um zu suchen
                                          • Erster Beitrag
                                            Letzter Beitrag
                                          0
                                          • Home
                                          • Aktuell
                                          • Tags
                                          • Ungelesen 0
                                          • Kategorien
                                          • Unreplied
                                          • Beliebt
                                          • GitHub
                                          • Docu
                                          • Hilfe