Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Bad Request 502 #325

Closed
Gisbert1 opened this issue Sep 11, 2021 · 11 comments · May be fixed by #328
Closed

Bad Request 502 #325

Gisbert1 opened this issue Sep 11, 2021 · 11 comments · May be fixed by #328
Assignees
Labels
bug Something isn't working question Further information is requested under-investigation Topic is under investigation
Milestone

Comments

@Gisbert1
Copy link

Hallo Christoph,

ich bekomme im logfile einen Bad Request 502 mit einem merkwürdigen Zeichen in der Adresszeile:
https://cdn-secure.buienalarm.nl/api/3.4/forecast.php?lat=51.02943&lon=7.05584®ion=de&unit=mm/u
®ion statt Region

Ich hab's heute erstmalig gegen 14.00 im logfile gesehen.

Viele​ Grüße​
Gisbert​

@christoph-morrison christoph-morrison self-assigned this Sep 11, 2021
@christoph-morrison christoph-morrison added bug Something isn't working question Further information is requested wontfix This will not be worked on labels Sep 11, 2021
@christoph-morrison christoph-morrison added this to the 3.0.9 milestone Sep 11, 2021
@christoph-morrison
Copy link
Collaborator

Hallo Gisbert,

das komische Zeichen kommt vermutlich daher, dass du hinter reg irgendwie ein Semikolon geschmuggelt hast. Aus ®ion macht jeder Browser dann ®ion, denn ® ist das HTML named entity für registered trademark. Das solltest du beheben ;-)

Mir ist auch aufgefallen, dass du für region den Länder-Code de gesetzt hast. Buienradar liefert für diesen Länder-Code seit April 2021 keine Daten mehr (und plant es auch nicht, soweit ich weiß). Prüf mal ob nl bei dir Daten liefert.

Gruß
Christoph

@christoph-morrison
Copy link
Collaborator

Für Leverkusen liefert nl auch Daten ;-)

@Gisbert1
Copy link
Author

Gisbert1 commented Sep 12, 2021

Hallo Christoph,

also an der URL selbst kann es nicht liegen, denn wenn ich diese in Chrome oder Firefox kopiere und abschicke, erhalte ich eine sinnvolle Antwort zurück: https://cdn-secure.buienalarm.nl/api/3.4/forecast.php?lat=51.02943&lon=7.05584&region=nl&unit=mm/u

Auch die Region nl statt de ergibt kein anderes Ergebnis auf den Bad Request 502.

Hier noch ein list meines Devices:

Internals:
   CFGFN      ./FHEM/WetterdatenSensorenInternet.cfg
   DEF        
   FUUID      5c430dc6-f33f-b139-0391-311dd930d4dd016b
   FVERSION   Buienradar.pm:?/2021-09-11
   INTERVAL   300
   LATITUDE   51.02943
   LONGITUDE  7.05584
   NAME       Buienradar
   NEXTUPDATE 2021-09-12 17:00:00
   NR         532
   REGION     nl
   STATE      Regen: 0.0 mm/h

max. Regen: 0.0 mm/h
   TYPE       Buienradar
   URL        https://cdn-secure.buienalarm.nl/api/3.4/forecast.php?lat=51.02943&lon=7.05584®ion=nl&unit=mm/u
   VERSION    3.0.9
   READINGS:
     2021-09-12 16:55:00   Zeitstempel     2021-09-12 16:55
     2021-09-12 16:55:00   active          ok
     2019-08-05 22:09:07   chartData       ['00:00', 0.000], ['22:00', 0.000], ['22:05', 0.000], ['22:10', 0.000], ['22:15', 0.000], ['22:20', 0.000], ['22:25', 0.000], ['22:30', 0.000], ['22:35', 0.000], ['22:40', 0.000], ['22:45', 0.000], ['22:50', 0.000], ['22:55', 0.000], ['23:00', 0.000], ['23:05', 0.000], ['23:10', 0.000], ['23:15', 0.000], ['23:20', 0.000], ['23:25', 0.000], ['23:30', 0.000], ['23:35', 0.000], ['23:40', 0.000], ['23:45', 0.000], ['23:50', 0.000], ['23:55', 0.000]
     2021-09-12 16:55:00   maxrain         0.0
     2021-09-12 16:55:00   rain            0.0
     2021-09-12 16:55:00   rainAmount      unknown
     2021-09-12 16:55:00   rainBegin       unknown
     2021-09-12 16:55:00   rainData        unknown
     2021-09-12 16:55:00   rainDataEnd     unknown
     2021-09-12 16:55:00   rainDataNow     0.0
     2021-09-12 16:55:00   rainDataStart   unknown
     2021-09-12 16:50:00   rainDuration    0
     2021-09-12 16:50:00   rainDurationIntervals 0
     2021-09-12 16:50:00   rainDurationPercent 0
     2021-09-12 16:50:00   rainDurationTime 00:00
     2021-09-12 16:55:00   rainEnd         unknown
     2021-09-12 16:55:00   rainLaMetric    unknown
     2021-09-12 16:55:00   rainMax         unknown
     2021-09-12 16:55:00   rainNow         unknown
     2021-09-12 16:55:00   rainTotal       unknown
     2021-09-12 16:55:00   state           Pulling https://cdn-secure.buienalarm.nl/api/3.4/forecast.php?lat=51.02943&lon=7.05584®ion=nl&unit=mm/u returns HTTP status code 502 instead of 200.
   helper:
     bm:
       CODE(0x55efc490e5c0):
         cnt        669
         dmx        -1000
         dtot       0
         dtotcnt    0
         mTS        12.09. 14:02:32
         max        0.00220203399658203
         tot        0.0206892490386963
         mAr:
           HASH(0x55efc472cc78)
           Buienradar
           refresh
       CODE(0x55efc491a7a0):
         cnt        17
         dmx        -1000
         dtot       0
         dtotcnt    0
         mTS        12.09. 16:49:01
         max        0.00136399269104004
         tot        0.00525760650634766
         mAr:
           HASH(0x55efc472cc78)
           Buienradar
           ?
       CODE(0x55efc491ac08):
         cnt        3
         dmx        -1000
         dtot       0
         dtotcnt    0
         mTS        12.09. 03:20:02
         max        0.00315999984741211
         tot        0.00648307800292969
         mAr:
           set
           Buienradar
           region
           nl
Attributes:
   comment    Das Reading maxrain ist der Maximalwert der Regenmenge aus folgenden Devices:
- Buienradar
- Leverkusen.DarkSky - wegen fehlerhaften Daten (Werte ~ 0.01 mm/qm) rausgenommen
- verschiedene Netatmo-Geräte in der Umgebung
- Am Mühlenweg 1 und Dünenweg 33 wurden rausgenommen wegen Fehlmessungen (Rasen sprengen?)
Das Reading maxrain wird über eine Funktion max_rain() erzeugt, die in 99_myUtils_Dewpoint.pm steht
   group      Wetter
   icon       weather_rain_meter
   interval   300
   region     nl
   room       Weather
   stateFormat Regen:  0 ? "red":"#2e5e87")}'>[$name:rainDataNow] mm/h

max. Regen:  0 ? "red":"#2e5e87")}'>[$name:maxrain] mm/h
   userReadings rainDataNow {round(ReadingsNum($name,'rainNow',''),1)}, 
Zeitstempel {substr(ReadingsTimestamp($name,'rainDataNow',''),0,16)}, 
rain {ReadingsNum($name,'rainDataNow','')}, 
maxrain {round(max_rain(),1)}, 
active {(ReadingsAge($name,'state',0) > 300 ? "not ok":"ok")}

Merkwürdigerweise steht jetzt bei der URL ®ion statt region, obwohl in der Deviceübersicht region steht.

Viele​ Grüße​
Gisbert​

@christoph-morrison
Copy link
Collaborator

christoph-morrison commented Sep 12, 2021

Poste mal ein list und die Definition deines Devices.

Hast du ja schon.

@christoph-morrison
Copy link
Collaborator

Lade mal bitte ./FHEM/WetterdatenSensorenInternet.cfg hoch.

@Gisbert1
Copy link
Author

Gisbert1 commented Sep 12, 2021

Hallo Christoph,

Ich hab die Definition in eine .cfg ausgelagert.

define Buienradar Buienradar 
setuuid Buienradar 5c430dc6-f33f-b139-0391-311dd930d4dd016b
attr Buienradar comment Das Reading maxrain ist der Maximalwert der Regenmenge aus folgenden Devices:
Buienradar
Leverkusen.DarkSky - wegen fehlerhaften Daten (Werte ~ 0.01 mm/qm) rausgenommen
verschiedene Netatmo-Geräte in der Umgebung
Das Reading maxrain wird über eine Funktion max_rain() erzeugt, die in 99_myUtils_Dewpoint.pm steht
attr Buienradar group Wetter
attr Buienradar icon weather_rain_meter
attr Buienradar interval 300
attr Buienradar region nl
attr Buienradar room Weather
attr Buienradar stateFormat Regen: <span style='color:{(ReadingsVal('$name','rainDataNow','') > 0 ? "red":"#2e5e87")}'>[$name:rainDataNow] mm/h</span><br/>\
max. Regen: <span style='color:{(ReadingsVal('$name','maxrain','') > 0 ? "red":"#2e5e87")}'>[$name:maxrain] mm/h</span>
attr Buienradar userReadings rainDataNow {round(ReadingsNum($name,'rainNow',''),1)}, \
Zeitstempel {substr(ReadingsTimestamp($name,'rainDataNow',''),0,16)}, \
rain {ReadingsNum($name,'rainDataNow','')}, \
maxrain {round(max_rain(),1)}, \
active {(ReadingsAge($name,'state',0) > 300 ? "not ok":"ok")}

Viele​ Grüße​
Gisbert​

@christoph-morrison christoph-morrison added under-investigation Topic is under investigation and removed wontfix This will not be worked on labels Sep 13, 2021
@christoph-morrison
Copy link
Collaborator

Also da fehlen insbesondere im Kommentarfeld mal die Escapes für den Zeilenumbruch (\).

@christoph-morrison
Copy link
Collaborator

christoph-morrison commented Sep 13, 2021

Anstelle des active-UserReading würde ich dir auch eher das readingsWatcher-Modul empfehlen.

@christoph-morrison
Copy link
Collaborator

Zeig mal bitte ein list deines global-Devices

@Gisbert1
Copy link
Author

Hallo Christoph,

die Escape-Zeichen sind schon vorhanden; die hab ich nur hier entfernt, da sie zu ungewollten Formatierungen geführt hat.

Das list des global Devices kann ich im Moment nicht senden, da ich mobil unterwegs bin. Vermutlich am Mi/Do kann ich's senden.

Viele​ Grüße​
Gisbert​

@christoph-morrison
Copy link
Collaborator

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working question Further information is requested under-investigation Topic is under investigation
Development

Successfully merging a pull request may close this issue.

2 participants