Es wäre richtig cool, wenn in den Adapter die API von solarprognose.de mit eingebaut werden könnte https://www.solarprognose.de/web/en/solarprediction/page/api
NEWS
Best posts made by fnolting
-
RE: Test PV Forecast Adapter
Latest posts made by fnolting
-
Mehrere Objekte in das gleiche Measurement schreiben
Ich habe ioBroker mit dem InfluxDB- und Fronius SolarAPI-Adapter laufen und dieser speichert die Werte aus der Fronius SolarAPI in verschiedene Objekte. Ich möchte diese jetzt in InfluxDB speichern, habe aber für jeden Wert ein eigenes Measurement (z.B. fronius-api.0.[id].month.6.FeedIn) Schöner wäre es wenn ich ein einziges Measurement für SolarAPI hätte und da drin dann Werte für FeedIn, Production, Consumption usw. anstatt immer nur den Wert "value" im Measurement. Geht das?
-
RE: BackItUp für InfluxDB
@simatec
Danke, jetzt läuft das Backup durch! -
RE: BackItUp für InfluxDB
@simatec
Super, das war - jetzt rennt das Influx Backup. Danke!Bei Grafana hakt es leider noch. Ab Grafana v9.1 gibt es ja keine API-Keys mehr sondern Service Accounts. Ich habe einen sa.backup erstellt und einen Key mit Adminrechten und unbegrenzter Gültigkeit erstellt. Dieser Service-User hat aber kein Passwort - ich habe jetzt versucht den Key beim Passwort und beim Token einzugeben, aber leider schlägt das Grafana Backup fehl.
2024-01-28 20:39:48.443 error [iobroker/grafana] Error on Grafana Datasource Request 2024-01-28 20:39:48.870 error [iobroker/grafana] cannot found Grafana Backup files 2024-01-28 20:40:00.802 error [iobroker/clean] Backup files not deleted from /opt/iobroker/backups because some errors.
-
RE: BackItUp für InfluxDB
@simatec
Werden die globalen Variablen für Host, Port und Token bei einerinfluxDBMulti
config auf alleinfluxDBEvents
vererbt und die Werte in den einzelnen Events sind nur als Override gedacht oder muss man sie in jedem Event eintragen? Habe jedenfalls den Host überall ergänzt (als FQDN) mit dem gleichen Ergebnis:Error: API compatibility check failed: 400 Bad Request: unable to decode response content type ""
-
RE: BackItUp für InfluxDB
{ "_id": "system.adapter.backitup.0", "type": "instance", "common": { "name": "backitup", "version": "2.9.8", "title": "BackItUp", "authors": [ "simatec <backitup@simateccloud.de>", "bluefox <dogafox@gmail.com>" ], "osDependencies": { "linux": [ "cifs-utils", "nfs-common" ] }, "docs": { "en": "docs/en/backitup.md", "de": "docs/de/backitup.md" }, "platform": "Javascript/Node.js", "mode": "daemon", "compact": true, "icon": "backitup.png", "materialize": true, "messagebox": true, "stopBeforeUpdate": true, "connectionType": "local", "dataSource": "assumption", "materializeTab": true, "adminTab": { "name": { "en": "Backup", "de": "Backup", "ru": "Назад", "pt": "Backup", "nl": "Versterking", "fr": "Sauvegarde", "it": "Backup", "es": "Copia de seguridad", "pl": "Backup", "uk": "Зареєструватися", "zh-cn": "包装" }, "ignoreConfigUpdate": true, "singleton": false, "fa-icon": "</i><img style='width:24px;margin-bottom:-6px;' src='/adapter/backitup/backitup.svg'><i>" }, "dependencies": [ { "js-controller": ">=4.0.0" } ], "globalDependencies": [ { "admin": ">=6.0.0" } ], "adminUI": { "config": "materialize", "tab": "materialize" }, "enabled": true, "extIcon": "https://raw.githubusercontent.com/simatec/ioBroker.backitup/master/admin/backitup.png", "keywords": [ "Backup", "IoBroker", "Homematic" ], "readme": "https://github.com/simatec/ioBroker.backitup/blob/master/README.md", "loglevel": "info", "type": "general", "license": "MIT", "plugins": { "sentry": { "dsn": "https://e8510540c3a343aa8ce5678a4b3c8107@sentry.iobroker.net/36" } }, "messages": [ { "condition": { "operand": "and", "rules": [ "oldVersion<2.9.0", "newVersion>=2.9.0" ] }, "title": { "en": "Changes for CIFS under Node 20.x.x", "de": "Änderungen für CIFS unter Node 20.x.x", "ru": "Изменения для CIFS под Node 20.x.x", "pt": "Alterações para CIFS em Node 20.x.x", "nl": "Veranderingen voor CIFS onder Node 20.x", "fr": "Changements pour le CIFS sous le no 20.x.x", "it": "Modifiche per CIFS sotto Node 20.x.x", "es": "Cambios para CIFS bajo Nodo 20.x.x", "pl": "Zmiany dla CIFS pod numerem 20.x", "uk": "Зміни для CIFS під Node 20.x.x", "zh-cn": "第20.x号CIFS的变动" }, "text": { "en": "FritzNAS users must enable the \"Cache Loose\" option in the Backitup settings for proper CIFS function under Node 20. Without this option, no backup can be written to the FritzNAS.", "de": "FritzNAS-Benutzer müssen die Option \"Cache Loose\" in den Backitup-Einstellungen für die richtige CIFS-Funktion unter Node 20 aktivieren. Ohne diese Option kann kein Backup auf das FritzNAS geschrieben werden.", "ru": "Пользователи FritzNAS должны включить опцию \"Cache Loose\" в настройках Backitup для правильной функции CIFS под Node 20. Без этого варианта резервное копирование не может быть написано на FritzNAS.", "pt": "Os usuários do FritzNAS devem ativar a opção \"Cache Loose\" nas configurações do Backitup para a função CIFS apropriada sob o Node 20. Sem esta opção, nenhum backup pode ser escrito para o FritzNAS.", "nl": "FritzNAS gebruikers moeten de \"Cache Loose\" optie in de Backitup settings voor goede CIFS-functies onder de 20. Zonder deze optie kan er geen back-up geschreven worden aan de FritzNAS.", "fr": "Les utilisateurs de FritzNAS doivent activer l'option \"Cache Loose\" dans les paramètres de sauvegarde de la fonction CIFS appropriée sous le numéro 20. Sans cette option, aucune sauvegarde ne peut être écrite au FritzNAS.", "it": "Gli utenti di FritzNAS devono abilitare l'opzione \"Cache Loose\" nelle impostazioni di Backitup per una corretta funzione CIFS sotto Node 20. Senza questa opzione, nessun backup può essere scritto al FritzNAS.", "es": "Los usuarios de FritzNAS deben habilitar la opción \"Cache Loose\" en la configuración de Backitup para la función apropiada de CIFS bajo Nodo 20. Sin esta opción, no se puede escribir copia de seguridad al FritzNAS.", "pl": "Użytkownicy FritzNAS muszą umożliwić opcję „Cache Loose” w ustawieniach Backitup dla funkcji CIFS. Bez tej opcji nie można pisać FritzNAS.", "uk": "Користувачі FritzNAS повинні увімкнути параметр \"Cache Loose\" у налаштуваннях Backitup для коректної функції CIFS під Node 20. Без цього варіанту не можна писати на ФрицНАС.", "zh-cn": "FritzNAS用户必须能够使Backitup环境中的“Cache Loose”方案能够正常的CIFS功能。 没有这种选择,就不能向弗朗西斯·弗朗索瓦斯写回来。." }, "level": "warn", "buttons": [ "agree", "cancel" ] } ], "installedVersion": "2.9.8", "host": "hyperion" }, "native": { "minimalEnabled": true, "minimalTime": "02:48", "minimalEveryXDays": "1", "minimalDeleteAfter": "3", "minimalNameSuffix": "", "redisMinimalEnabled": false, "mysqlMinimalEnabled": false, "mysqlQuick": false, "mysqlSingleTransaction": false, "ccuEnabled": false, "ccuTime": "01:36", "ccuEveryXDays": "3", "ccuDeleteAfter": "10", "ccuNameSuffix": "", "ccuHost": "", "ccuUser": "Admin", "ccuPassword": "", "ccuMulti": false, "ccuEvents": [], "ccuUsehttps": false, "ccuSignedCertificates": true, "webdavEnabled": true, "webdavUsername": "fnolting", "webdavPassword": "***", "webdavURL": "https://cloud.***.de/remote.php/dav/files/fnolting/", "webdavDeleteOldBackup": false, "webdavOwnDir": false, "webdavMinimalDir": "/backupDir/iobroker", "webdavCcuDir": "/backupDir/ccu", "webdavDir": "/iobroker-backup", "webdavSignedCertificates": false, "dropboxEnabled": false, "dropboxAccessToken": "", "dropboxAccessJson": "", "dropboxTokenType": "custom", "dropboxCodeChallenge": "", "dropboxDeleteOldBackup": false, "dropboxOwnDir": false, "dropboxMinimalDir": "/backupDir/iobroker", "dropboxCcuDir": "/backupDir/ccu", "dropboxDir": "/backupDir", "onedriveEnabled": false, "onedriveAccessJson": "", "onedriveLastTokenRenew": "", "onedriveDeleteOldBackup": false, "onedriveOwnDir": false, "onedriveMinimalDir": "backupDir/iobroker", "onedriveCcuDir": "backupDir/ccu", "onedriveDir": "backupDir", "googledriveEnabled": false, "googledriveAccessTokens": "", "googledriveDeleteOldBackup": false, "googledriveOwnDir": false, "googledriveMinimalDir": "/backupDir/iobroker", "googledriveCcuDir": "/backupDir/ccu", "googledriveDir": "/backupDir", "mySqlEnabled": false, "mySqlHost": "localhost", "mySqlPort": "3306", "mySqlName": "iobroker", "mySqlUser": "", "mySqlPassword": "", "mySqlDeleteAfter": 5, "mySqlDumpExe": "", "mySqlMulti": false, "mySqlEvents": [], "influxDBEnabled": true, "influxDBHost": "home.***.de", "influxDBPort": "8086", "influxDBName": "rpi", "influxDBDumpExe": "", "influxDBDeleteAfter": 5, "influxDBType": "local", "influxDBToken": "XXB7fP-***Ffdw==", "influxDBVersion": "2.x", "influxDBProtocol": "https", "influxDBMulti": true, "influxDBEvents": [ { "host": "", "port": "8086", "dbName": "rpi", "nameSuffix": "rpi", "token": "XXB7fP-***Ffdw==", "protocol": "https", "dbversion": "2.x" }, { "host": "", "port": "8086", "dbName": "battery", "nameSuffix": "battery", "token": "XXB7fP-***Ffdw==", "protocol": "https", "dbversion": "2.x" }, { "host": "", "port": "8086", "dbName": "grid", "nameSuffix": "grid", "token": "XXB7fP-***Ffdw==", "protocol": "https", "dbversion": "2.x" }, { "host": "", "port": "8086", "dbName": "solar", "nameSuffix": "solar", "token": "XXB7fP-***Ffdw==", "protocol": "https", "dbversion": "2.x" }, { "host": "", "port": "8086", "dbName": "solar.forecast", "nameSuffix": "solar.forecast", "token": "XXB7fP-***Ffdw==", "protocol": "https", "dbversion": "2.x" }, { "host": "", "port": "8086", "dbName": "weather.current", "nameSuffix": "weather.current", "token": "XXB7fP-***Ffdw==", "protocol": "https", "dbversion": "2.x" }, { "host": "", "port": "8086", "dbName": "weather.forecast", "nameSuffix": "weather.forecast", "token": "XXB7fP-***Ffdw==", "protocol": "https", "dbversion": "2.x" } ], "deleteOldDataBase": false, "grafanaEnabled": true, "grafanaHost": "home.florian-nolting.de", "grafanaPort": "8445", "grafanaUsername": "fnolting", "grafanaPassword": "\"gD\b^X\u0001\u0004\u0004\u0000sXB", "grafanaApiKey": "glsa_xYZKYD7KiAzLdlqcf5FXXwdkuojPtWnA_9560ff70", "grafanaProtocol": "https", "grafanaSignedCertificates": true, "pgSqlHost": "", "pgSqlPort": "5432", "pgSqlName": "", "pgSqlUser": "", "pgSqlPassword": "", "pgSqlDeleteAfter": 5, "pgSqlDumpExe": "", "pgSqlEnabled": false, "pgSqlMulti": false, "pgSqlEvents": [], "cifsEnabled": false, "cifsMount": "", "cifsUser": "", "cifsPassword": "", "cifsOwnDir": false, "cifsDomain": "", "cifsDir": "sharename/backupDir", "cifsCcuDir": "sharename/backupDir", "cifsMinimalDir": "sharename/backupDir", "cifsDeleteOldBackup": false, "connectType": "NFS", "smbType": "vers=3.1.1", "sudoMount": true, "noserverino": false, "cacheLoose": false, "wakeOnLAN": false, "macAd": "20:DE:20:DE:20:DE", "wolWait": "25", "wolPort": "9", "wolExtra": false, "ftpEnabled": false, "ftpHost": "", "ftpPort": "21", "ftpSecure": false, "ftpSignedCertificates": true, "ftpDir": "/backupDir", "ftpUser": "", "ftpPassword": "", "ftpOwnDir": false, "ftpCcuDir": "/backupDir/ccu", "ftpMinimalDir": "/backupDir/iobroker", "ftpDeleteOldBackup": false, "redisEnabled": false, "redisPath": "/var/lib/redis", "redisType": "local", "redisHost": "", "redisPort": "6379", "redisUser": "", "redisPassword": "", "redisAOFactive": false, "historyEnabled": false, "historyPath": "media/usb/history", "javascriptsEnabled": false, "zigbeeEnabled": false, "esphomeEnabled": false, "yahkaEnabled": false, "jarvisEnabled": false, "notificationEnabled": false, "notificationsType": "Telegram", "telegramInstance": "", "telegramNoticeType": "longTelegramNotice", "telegramUser": "none", "telegramSilentNotice": false, "telegramOnlyError": false, "telegramWaitToSend": "0", "whatsappInstance": "", "whatsappNoticeType": "longWhatsappNotice", "whatsappOnlyError": false, "whatsappWaitToSend": "0", "gotifyInstance": "", "gotifyNoticeType": "longGotifyNotice", "gotifyOnlyError": false, "gotifyWaitToSend": "0", "signalInstance": "", "signalNoticeType": "longSignalNotice", "signalOnlyError": false, "signalWaitToSend": "0", "matrixInstance": "", "matrixNoticeType": "longMatrixNotice", "matrixOnlyError": false, "matrixWaitToSend": "0", "discordInstance": "", "discordNoticeType": null, "discordOnlyError": false, "discordWaitToSend": "0", "discordTarget": "", "pushoverInstance": "", "pushoverNoticeType": "longPushoverNotice", "pushoverSilentNotice": false, "pushoverDeviceID": "", "pushoverOnlyError": false, "pushoverWaitToSend": "0", "emailReceiver": "xxx@xxx.com", "emailSender": "xxx@xxx.com", "emailInstance": "", "emailNoticeType": "longEmailNotice", "emailOnlyError": false, "emailWaitToSend": "0", "debugLevel": false, "sentry_enable": true, "historyEntriesNumber": "25", "restoreSource": "local", "startAllRestore": false, "hostType": "Single", "slaveInstance": [], "slaveNameSuffix": "", "stopSlaveAfter": false, "ignoreErrors": false, "restoreTab": false, "noderedEnabled": false, "sqliteEnabled": false, "sqlitePath": "/opt/sqlite/data.db", "sqliteDumpExe": "", "zigbee2mqttPath": "/opt/zigbee2mqtt/data", "zigbee2mqttEnabled": false, "fileSizeError": "512", "fileSizeWarning": "1024" }, "from": "system.host.hyperion.cli", "ts": 1706368328322, "protectedNative": [], "encryptedNative": [], "notifications": [], "instanceObjects": [ { "_id": "info", "type": "channel", "common": { "name": "Information" }, "native": {} }, { "_id": "info.latestBackup", "type": "state", "common": { "role": "state", "name": "Latest backup found by start", "type": "json", "read": true, "write": false }, "native": {} }, { "_id": "info.ccuNextTime", "type": "state", "common": { "role": "state", "name": "Next CCU backup", "type": "string", "read": true, "write": false, "def": "none" }, "native": {} }, { "_id": "info.iobrokerNextTime", "type": "state", "common": { "role": "state", "name": "Next iobroker backup", "type": "string", "read": true, "write": false, "def": "none" }, "native": {} }, { "_id": "history", "type": "channel", "common": { "name": "History Logs" }, "native": {} }, { "_id": "history.html", "type": "state", "common": { "role": "html", "name": "History-Log of executed backups", "type": "string", "read": true, "write": false, "def": "No backups yet" }, "native": {} }, { "_id": "history.json", "type": "state", "common": { "role": "state", "name": "History-Log of executed backups", "type": "json", "read": true, "write": false, "def": "[]" }, "native": {} }, { "_id": "history.ccuLastTime", "type": "state", "common": { "role": "state", "name": "Last CCU backup", "type": "string", "read": true, "write": false, "def": "No backups yet" }, "native": {} }, { "_id": "history.iobrokerLastTime", "type": "state", "common": { "role": "state", "name": "Last iobroker backup", "type": "string", "read": true, "write": false, "def": "No backups yet" }, "native": {} }, { "_id": "history.ccuSuccess", "type": "state", "common": { "role": "switch", "name": "Last ccu backup Success", "type": "boolean", "read": true, "write": true, "def": false }, "native": {} }, { "_id": "history.iobrokerSuccess", "type": "state", "common": { "role": "switch", "name": "Last iobroker backup Success", "type": "boolean", "read": true, "write": true, "def": false }, "native": {} }, { "_id": "oneClick", "type": "channel", "common": { "name": "OneClick Buttons" }, "native": {} }, { "_id": "oneClick.ccu", "type": "state", "common": { "role": "switch", "name": "Execute CCU backup", "type": "boolean", "read": true, "write": true, "def": false }, "native": {} }, { "_id": "oneClick.iobroker", "type": "state", "common": { "role": "switch", "name": "Execute iobroker backup", "type": "boolean", "read": true, "write": true, "def": false }, "native": {} }, { "_id": "output", "type": "channel", "common": { "name": "Output states" }, "native": {} }, { "_id": "output.line", "type": "state", "common": { "role": "state", "name": "Used for debug outputs", "type": "string", "read": true, "write": false, "def": "" }, "native": {} } ], "objects": [], "acl": { "object": 1636, "state": 1636, "file": 1632, "owner": "system.user.admin", "ownerGroup": "system.group.administrator" }, "user": "system.user.admin" }
Die Token in den Einträgen der
influxDBEvents
habe ich nachträglich eingefügt, da ursprünglich der Token nur global in der VariableinfluxDBToken
stand.Ohne die zusätzlichen Token hat BackItUp versucht
influx backup --bucket battery -t "/opt/iobroker/backups/influxDB_2024_01_28-10_29_29_battery_backupiobroker"
auszuführen, was auch auf der Konsole nicht funktioniert:Error: backup path must be specified as a single positional argument
@Marc-Berg mea culpa, ich gelobe Besserung
-
RE: BackItUp für InfluxDB
Das Backup meiner InfluxDB Buckets schlägt fehl:
Wenn ich das command manuell in der shell ausführe, funktioniert es aber:
Ich habe TLS aktiviert und auch die entsprechenden Anpassungen (url in der ~/.influxdbv2/configs) vorgenommen. Der Token ist auch der root-Token, auch wenn ich davon ausgegangen wäre, dass ein nachträglich erstellter "all-access-token" eigentlich auch Access für die Erstellung der Backups haben sollte..?! Aber es muss anscheinend der root-Token von der initialen Installation sein.
Warum funktioniert es manuell, aber nicht im automatischen Backup-Prozess?
-
RE: Test PV Forecast Adapter
Es wäre richtig cool, wenn in den Adapter die API von solarprognose.de mit eingebaut werden könnte https://www.solarprognose.de/web/en/solarprediction/page/api