NEWS
[Linux Shell-Skript] WLAN-Wetterstation
-
-
Ich habe noch eine Änderung vorgenommen (noch nicht auf GitHub), aber heute Nacht verpeilt den Erfolg oder Misserfolg zu kontrollieren.
Unter Umständen kann es eine ganze Zeit nach Mitternacht dauern bis Werte angezeigt werden. "Null" ist nicht das gewünschte Ergebnis. Mit der Änderung wird (oder sollte) solange Influx nichts liefert (zB. Werte stehen noch im RAM und sind noch nicht geschrieben) die aktuelle Aussentemperatur als Min/Max angezeigt werden.Bei nur einem Messwert, bzw. bis sich auch mal der Wert ändert, ist Min/Max (und Avg) sowieso gleich. Erst mit der 1. Wertänderung gibt es ein "echtes" Min/Max/Avg wenn ihr wisst was ich meine.
...und nochmals: wenn was fehlt, einfach nachfragen. Mehr als "Nein" kann ja nicht passieren
Entweder aus technischer Sicht, Aufwand oder Sinnlosigkeit ich wüsste gerne ob vor 200 Tagen um 0:23 Uhr die Sonne schien... (würde mit 0% Wahrscheinlichkeit umgesetzt werden)
Ich kann halt nur nicht immer "wann" und "ob" versprechen -
@sborg sagte in [Linux Shell-Skript] WLAN-Wetterstation:
Entweder aus technischer Sicht, Aufwand oder Sinnlosigkeit ich wüsste gerne ob vor 200 Tagen um 0:23 Uhr die Sonne schien... (würde mit 0% Wahrscheinlichkeit umgesetzt werden)Ok, dann nehmen wir 199 Tage
Sorry, konnte ich mir jetzt nicht verkneifen
Und Danke nochmal für die tolle Arbeit und deinen Support -
@nashra sagte in [Linux Shell-Skript] WLAN-Wetterstation:
Sorry, konnte ich mir jetzt nicht verkneifen
Och bisserl Spaß muss auch sein...
if $Anfrage and $User == "Nashra" then delete $Anfrage
happens -
@sborg sagte in [Linux Shell-Skript] WLAN-Wetterstation:
@nashra sagte in [Linux Shell-Skript] WLAN-Wetterstation:
Sorry, konnte ich mir jetzt nicht verkneifen
Och bisserl Spaß muss auch sein...
if $Anfrage and $User == "Nashra" then delete $Anfrage
happens -
@SBorg - Moin. Ich versuche jetzt auf influx2 zu migrieren und habe ein Problem an dem du nicht ganz unschuldig bist!
Ich habe die meine Daten aus v1 mit:
influx_inspect export \ -database <database-name> \ -out <output-file-path> \ -lponly
exportiert um sie dann mir:
influx write \ --bucket <bucket-name> \ --file <path-to-line-protocol-file>
in der v2 zu importieren. (siehe: https://docs.influxdata.com/influxdb/v2.0/upgrade/v1-to-v2/manual-upgrade/#migrate-time-series-data )
jetzt bekomme ich eine Meldung:
Error: Failed to write data: unable to parse 'javascript.0.Wetterstation.Wetter_aktuell value="stürmisch, Regen': unbalanced quotes.
Ein Blick in die Datei verrät gleich:
javascript.0.Wetterstation.Wetter_aktuell value="stürmisch, Regen " 1609109126391000000
dass am Ende des Strings ein Zeilenumbruch erstellt wird. Bei Zeilen mit nur einem Wort als String stört ihn das aber gar nicht. d.h. diese Zeile ist ok.
javascript.0.Wetterstation.Wetter_aktuell value="regnerisch " 1609075829705000000
Die erste Bitte ist, ob du es prüfen könntest und ggf. mit tr den unnötigen Zeilenwechsel entfernen.
Die zweite ist: mir bei dem sed Befehl helfen, bei dem das \n am Ende einer Zeile entfernt wird, aber nur wenn die Zeile mit einem Buchstaben endet.Das habe ich mit:
#!/bin/bash while read LINE do if [[ $(echo $LINE| grep -Po '.(?=.{0}$)') =~ [a-z] ]]; then echo $LINE | tr -d '\n' else echo $LINE fi done < $1
Danke und Gruß,
a200.ps. ich hoffe, dass der Bezug zu deinem Skript ausreichend ist.
-
@a200 sagte in [Linux Shell-Skript] WLAN-Wetterstation:
und habe ein Problem an dem du nicht ganz unschuldig bist!
Nur im Sinne von "ohne Skript gäbe es das Problem nicht"
Es ist kein direkter Fehler vom Skript/mir, so richtig erklären warum kann ich es auch nicht. Die Routine ist immer dieselbe, nur der Text ändert sich halt:
Zuerst in Anführungszeichen wie er es per Fehler an meckert: geht nicht...
noch --- Minuten geht, warum aber, ist auch nur Text aus mehreren Worten...
dauert noch xx Minuten geht wieder nicht...
lange schön geht auch nicht, könnte aber an Umlauten liegen, wobei die anderen hatten keine drin + ging auch nicht...
gleichbleibend ein Wort + ohne Umlaute, geht aber auch nicht...
...und warum zum Teufel geht dann dauert max. 1 Minute wieder?
Es folgen Versuche mit "Ticks". Die funktionieren jetzt zwar, stehen dann aber mit im Datenpunkt drinunflätiger KraftausdruckIrgendwie kriegt der Simple-API - Adapter da was in den falschen Hals und interpretiert, warum und wann auch immer, die Tab-Stops des Shell-Skriptes (es sind keinerlei Steuerzeichen innerhalb der Werte vorhanden!) als CR. Das wieso mal oder mal nicht... Keine Ahnung, die Lösung ist aber zumindest einfach (für die V2.9.0 zukünftig dann geändert):
Suche in der sub bei ~#433 nach#build Data-String IOB_WDATA=$(cat <<-EOD ${DP_WETTER_TREND}=${WETTER_TREND} &${DP_DRUCK_TENDENZ}=${PNOW} &${DP_WETTER_AKTUELL}=${WETTER_AKTUELL} &${DP_WETTERDATA}=${DRUCKWERTE[*]} EOD )
und entferne die Tab-Stops (wichtig: EOD und ) müssen weiterhin mit einem Tab-Stop eingerückt bleiben):
#build Data-String IOB_WDATA=$(cat <<-EOD ${DP_WETTER_TREND}=${WETTER_TREND}&${DP_DRUCK_TENDENZ}=${PNOW}&${DP_WETTER_AKTUELL}=${WETTER_AKTUELL}&${DP_WETTERDATA}=${DRUCKWERTE[*]} EOD )
@a200 sagte in [Linux Shell-Skript] WLAN-Wetterstation:
ps. ich hoffe, dass der Bezug zu deinem Skript ausreichend ist.
Passt doch, und wenn nicht ist es auch nicht weiter tragisch
-
Hey, was ich die Tage vergessen hatte zu erwähnen....
Bei Temperatur_Jahresdurchschnitt_max/min kommt bei mir nichts
-
@nashra bei mir schon...
-
@nashra sagte in [Linux Shell-Skript] WLAN-Wetterstation:
Bei Temperatur_Jahresdurchschnitt_max/min kommt bei mir nichts
dito
und bei Trockenperiode auch nicht
-
@negalein said in [Linux Shell-Skript] WLAN-Wetterstation:
@nashra sagte in [Linux Shell-Skript] WLAN-Wetterstation:
Bei Temperatur_Jahresdurchschnitt_max/min kommt bei mir nichts
dito
und bei Trockenperiode auch nicht
Hier ist auch noch sehr kalt/bzw heiß im Durchschnitt... -
@sborg sagte in [Linux Shell-Skript] WLAN-Wetterstation:
@a200 sagte in [Linux Shell-Skript] WLAN-Wetterstation:
und habe ein Problem an dem du nicht ganz unschuldig bist!
Nur im Sinne von "ohne Skript gäbe es das Problem nicht"
Es ist kein direkter Fehler vom Skript/mir, so richtig erklären warum kann ich es auch nicht. Die Routine ist immer dieselbe, nur der Text ändert sich halt:
Man SBorg, du hast mich vollkommen falsch verstanden! Dir ist das ganze Projekt zu verdanken und ich bin verdammt glücklich, dass du so viel Zeit und Energie da rein steckst. Und dass du nicht ganz unschuldig bist, bezieht sich genau auf den Spruch "ohne Skript gäbe es das Problem nicht"!Irgendwie kriegt der Simple-API - Adapter da was in den falschen Hals und interpretiert, warum und wann auch immer, die Tab-Stops des Shell-Skriptes (es sind keinerlei Steuerzeichen innerhalb der Werte vorhanden!) als CR. Das wieso mal oder mal nicht... Keine Ahnung, die Lösung ist aber zumindest einfach (für die V2.9.0 zukünftig dann geändert):
Genau das habe ich mir auch gewünscht. Dass aus dem "Müll" was über die API kommt, das CR entfernt wird.
@a200 sagte in [Linux Shell-Skript] WLAN-Wetterstation:
ps. ich hoffe, dass der Bezug zu deinem Skript ausreichend ist.
Passt doch, und wenn nicht ist es auch nicht weiter tragisch
-
@sborg sagte in [Linux Shell-Skript] WLAN-Wetterstation:
@a200 sagte in [Linux Shell-Skript] WLAN-Wetterstation:
und habe ein Problem an dem du nicht ganz unschuldig bist!
Nur im Sinne von "ohne Skript gäbe es das Problem nicht"
Man SBorg. Gott sei Dank du hast mich richtig verstanden!
Es ist kein direkter Fehler vom Skript/mir, so richtig erklären warum kann ich es auch nicht. Die Routine ist immer dieselbe, nur der Text ändert sich halt:
Das ist mir auch bewusst. Und es ist nicht das erste mal, dass du den Mist von anderen bereinigen musst!
Irgendwie kriegt der Simple-API - Adapter da was in den falschen Hals und interpretiert, warum und wann auch immer, die Tab-Stops des Shell-Skriptes (es sind keinerlei Steuerzeichen innerhalb der Werte vorhanden!) als CR. Das wieso mal oder mal nicht... Keine Ahnung, die Lösung ist aber zumindest einfach (für die V2.9.0 zukünftig dann geändert):
Genau das habe ich mir auch gewünscht. Dass aus dem "Müll" was über die API kommt, das CR entfernt wird.
@a200 sagte in [Linux Shell-Skript] WLAN-Wetterstation:
ps. ich hoffe, dass der Bezug zu deinem Skript ausreichend ist.
Passt doch, und wenn nicht ist es auch nicht weiter tragisch
Vielen Dank!
-
Stellvertretend:
@nashra sagte in [Linux Shell-Skript] WLAN-Wetterstation:
Bei Temperatur_Jahresdurchschnitt_max/min kommt bei mir nichts
Da wird so schnell auch nichts kommen. "Rekorde" sind rückwirkend + über den gesamten Zeitraum. Soll heißen:
Tagesrekord: ab 0:00 Uhr des Folgetages (bzw. wann das Skript läuft)
Monatsrekord: ab 01. des Folgemonats
Jahresrekord: ab dem 01.01. des FolgejahresErgo, es wird da erst zum 01.01.2022 was drin stehen, sofern ihr bereits zum 01.01.2021 schon Daten sammelt.
Zur besseren Veranschaulichung: Usain Bolt' 100m Weltrekord wurde auch nicht mitten im Lauf verkündet, sondern erst nach dem er die Ziellinie überquert hat.Falls jemand also einen aktuellen Jahreswert/e haben möchte, dann wäre das was fürs Shell-Skript, nicht für die Statistik.
@Negalein Die Trockenperiode muss aber nur bei dir klemmen. Die Anderen (und meiner einer) haben lt. ihrer Screenys da Werte stehen.
Bei "value" hast du 0 Tage stehen. Wie ist denn da der TS und LC? Aus dem LC und dem aktuellen Regenereignis (oder eben kein Regen) wird dann als Differenz die Trockenperiode berechnet. -
@a200 Immer gerne, und es sollte auch nicht mit einem CR sein. Dass da was klemmt ist auch noch in Ordnung, keiner ist ohne Fehl
Was mich nur echt stört ist die Inkonsistenz des Ganzen. Warum mal so und mal so? Ich sehe da kein System dahinter...
Aber ehrlich "wayne", die Änderung ist ja nur marginal und keine weiteren Auswirkungen.
Habe eben neue Fixes für die V2.9.0 hochgeladen. sub + sh tauschen, Service neu starten.
+Fix für InfluxDB V2.0-Problem
~Änderung Min-/Max-Tagesaußentemperatur um Mitternacht
Hab zwar wieder Punkt Mitternacht verpeilt, aber zumindest 0:05 Uhr steht was drin. Könnt ja mal selbst um 0:00 Uhr schauen (nicht vergessen: wird nur alle 5 Minuten geupdated ) -
@sborg Wenn wir schon beim Thema sind.
In meinem Export-file habe ich zwei verschiedene Versionen:
die alte:
javascript.0.Wetterstation.Info.Solarenergie_Jahr value=0.547 1609687532462000000
und die neue:
javascript.0.Wetterstation.Info.Solarenergie_Jahr value="116.091" 1630064249083000000Die neue, mit den Quotes, macht auch Probleme beim Import. Vielleicht kannst du dir das mal anschauen?
-
@sborg sagte in [Linux Shell-Skript] WLAN-Wetterstation:
Wie ist denn da der TS und LC?
Fu.., gerade gesehn, dass der vom 16. 10. 2020 ist.
Somit ist die ganze Statistik für den Arsch!Wieso der seitdem steht, keine Ahnung.
-
kurz was anderes bezüglich Dietpi-Update.
Ich wollte ihn heute von 6.30.0 auf v6.35.0 updaten.
Habs mit
apt update && apt upgrade && apt full-upgrade
(im Netzt gefunden) probiert.
Funktioniert nicht.
Was bedeutet das und wie mach ich das Update?dietpi@DietPi:~$ apt update && apt upgrade && apt full-upgrade Paketlisten werden gelesen... Fertig E: Sperrdatei /var/lib/apt/lists/lock konnte nicht geöffnet werden. - open (13: Keine Berechtigung) E: Das Verzeichnis /var/lib/apt/lists/ kann nicht gesperrt werden. dietpi@DietPi:~$
-
@negalein bei der Meldung " Keine Berechtigung" würde ich auf sudo tippen.
sudo apt update && apt upgrade && apt full-upgrade
-
@a200 sagte in [Linux Shell-Skript] WLAN-Wetterstation:
sudo tippen
mag mich nicht
dietpi@DietPi:~$ sudo apt update && apt upgrade && apt full-upgrade OK:1 https://deb.debian.org/debian buster InRelease OK:2 https://deb.debian.org/debian buster-updates InRelease OK:3 https://deb.debian.org/debian-security buster/updates InRelease OK:4 https://deb.debian.org/debian buster-backports InRelease Paketlisten werden gelesen... Fertig Abhängigkeitsbaum wird aufgebaut. Statusinformationen werden eingelesen.... Fertig Aktualisierung für 53 Pakete verfügbar. Führen Sie »apt list --upgradable« aus, um sie anzuzeigen. E: Sperrdatei /var/lib/dpkg/lock-frontend konnte nicht geöffnet werden. - open (13: Keine Berechtigung) E: Unable to acquire the dpkg frontend lock (/var/lib/dpkg/lock-frontend), are you root? dietpi@DietPi:~$