Browse Source

Add grafana dashboard

master
Micke Nordin 1 year ago
parent
commit
a5304c634f
2 changed files with 905 additions and 2 deletions
  1. 903
    0
      grafana_dashboard.json
  2. 2
    2
      weather.ini

+ 903
- 0
grafana_dashboard.json View File

@@ -0,0 +1,903 @@
1
+{
2
+  "annotations": {
3
+    "list": [
4
+      {
5
+        "builtIn": 1,
6
+        "datasource": "-- Grafana --",
7
+        "enable": true,
8
+        "hide": true,
9
+        "iconColor": "rgba(0, 211, 255, 1)",
10
+        "name": "Annotations & Alerts",
11
+        "type": "dashboard"
12
+      }
13
+    ]
14
+  },
15
+  "editable": true,
16
+  "gnetId": null,
17
+  "graphTooltip": 0,
18
+  "id": 1,
19
+  "iteration": 1590249347291,
20
+  "links": [],
21
+  "panels": [
22
+    {
23
+      "datasource": null,
24
+      "description": "",
25
+      "fieldConfig": {
26
+        "defaults": {
27
+          "custom": {},
28
+          "mappings": [],
29
+          "thresholds": {
30
+            "mode": "absolute",
31
+            "steps": [
32
+              {
33
+                "color": "green",
34
+                "value": null
35
+              }
36
+            ]
37
+          },
38
+          "unit": "percent"
39
+        },
40
+        "overrides": []
41
+      },
42
+      "gridPos": {
43
+        "h": 8,
44
+        "w": 6,
45
+        "x": 1,
46
+        "y": 0
47
+      },
48
+      "id": 6,
49
+      "options": {
50
+        "orientation": "auto",
51
+        "reduceOptions": {
52
+          "calcs": [
53
+            "last"
54
+          ],
55
+          "values": false
56
+        },
57
+        "showThresholdLabels": false,
58
+        "showThresholdMarkers": true
59
+      },
60
+      "pluginVersion": "7.0.0",
61
+      "targets": [
62
+        {
63
+          "format": "time_series",
64
+          "group": [],
65
+          "metricColumn": "none",
66
+          "rawQuery": true,
67
+          "rawSql": "select TIMESTAMP(date,time) AS time, rel_hum as \"Humidity\" FROM weather\nWHERE $__timeFilter(Date) AND station_name = \"$Station\"\nORDER BY time ASC\n",
68
+          "refId": "A",
69
+          "select": [
70
+            [
71
+              {
72
+                "params": [
73
+                  "value"
74
+                ],
75
+                "type": "column"
76
+              }
77
+            ]
78
+          ],
79
+          "timeColumn": "date",
80
+          "where": [
81
+            {
82
+              "name": "$__timeFilter",
83
+              "params": [],
84
+              "type": "macro"
85
+            }
86
+          ]
87
+        }
88
+      ],
89
+      "timeFrom": null,
90
+      "timeShift": null,
91
+      "title": "Current relative humidity",
92
+      "transparent": true,
93
+      "type": "gauge"
94
+    },
95
+    {
96
+      "datasource": null,
97
+      "description": "",
98
+      "fieldConfig": {
99
+        "defaults": {
100
+          "custom": {},
101
+          "mappings": [],
102
+          "thresholds": {
103
+            "mode": "absolute",
104
+            "steps": [
105
+              {
106
+                "color": "blue",
107
+                "value": null
108
+              },
109
+              {
110
+                "color": "green",
111
+                "value": 0
112
+              },
113
+              {
114
+                "color": "#EAB839",
115
+                "value": 15
116
+              },
117
+              {
118
+                "color": "orange",
119
+                "value": 25
120
+              },
121
+              {
122
+                "color": "red",
123
+                "value": 35
124
+              }
125
+            ]
126
+          },
127
+          "unit": "celsius"
128
+        },
129
+        "overrides": []
130
+      },
131
+      "gridPos": {
132
+        "h": 8,
133
+        "w": 5,
134
+        "x": 9,
135
+        "y": 0
136
+      },
137
+      "id": 7,
138
+      "options": {
139
+        "orientation": "auto",
140
+        "reduceOptions": {
141
+          "calcs": [
142
+            "last"
143
+          ],
144
+          "values": false
145
+        },
146
+        "showThresholdLabels": false,
147
+        "showThresholdMarkers": true
148
+      },
149
+      "pluginVersion": "7.0.0",
150
+      "targets": [
151
+        {
152
+          "format": "time_series",
153
+          "group": [],
154
+          "metricColumn": "none",
155
+          "rawQuery": true,
156
+          "rawSql": "select TIMESTAMP(date,time) AS time, temp as \"Temperature\" FROM weather\nWHERE $__timeFilter(Date) AND station_name = \"$Station\"\nORDER BY time ASC\n",
157
+          "refId": "A",
158
+          "select": [
159
+            [
160
+              {
161
+                "params": [
162
+                  "value"
163
+                ],
164
+                "type": "column"
165
+              }
166
+            ]
167
+          ],
168
+          "timeColumn": "date",
169
+          "where": [
170
+            {
171
+              "name": "$__timeFilter",
172
+              "params": [],
173
+              "type": "macro"
174
+            }
175
+          ]
176
+        }
177
+      ],
178
+      "timeFrom": null,
179
+      "timeShift": null,
180
+      "title": "Current temperature",
181
+      "transparent": true,
182
+      "type": "gauge"
183
+    },
184
+    {
185
+      "datasource": "MySQL",
186
+      "description": "",
187
+      "fieldConfig": {
188
+        "defaults": {
189
+          "custom": {},
190
+          "mappings": [],
191
+          "thresholds": {
192
+            "mode": "absolute",
193
+            "steps": [
194
+              {
195
+                "color": "green",
196
+                "value": null
197
+              }
198
+            ]
199
+          },
200
+          "unit": "degree"
201
+        },
202
+        "overrides": []
203
+      },
204
+      "gridPos": {
205
+        "h": 8,
206
+        "w": 6,
207
+        "x": 17,
208
+        "y": 0
209
+      },
210
+      "id": 9,
211
+      "options": {
212
+        "orientation": "auto",
213
+        "reduceOptions": {
214
+          "calcs": [
215
+            "last"
216
+          ],
217
+          "values": false
218
+        },
219
+        "showThresholdLabels": false,
220
+        "showThresholdMarkers": true
221
+      },
222
+      "pluginVersion": "7.0.0",
223
+      "targets": [
224
+        {
225
+          "format": "time_series",
226
+          "group": [],
227
+          "metricColumn": "none",
228
+          "rawQuery": true,
229
+          "rawSql": "SELECT\n  TIMESTAMP(date,time) as time,\n  winddir as \"Direction\"\nFROM weather\nWHERE $__timeFilter(time) AND station_name = \"$Station\"\nORDER BY time ASC\n",
230
+          "refId": "A",
231
+          "select": [
232
+            [
233
+              {
234
+                "params": [
235
+                  "value"
236
+                ],
237
+                "type": "column"
238
+              }
239
+            ]
240
+          ],
241
+          "timeColumn": "time",
242
+          "where": [
243
+            {
244
+              "name": "$__timeFilter",
245
+              "params": [],
246
+              "type": "macro"
247
+            }
248
+          ]
249
+        }
250
+      ],
251
+      "timeFrom": null,
252
+      "timeShift": null,
253
+      "title": "Current wind direction",
254
+      "type": "gauge"
255
+    },
256
+    {
257
+      "aliasColors": {},
258
+      "bars": true,
259
+      "dashLength": 10,
260
+      "dashes": false,
261
+      "datasource": null,
262
+      "description": "",
263
+      "fieldConfig": {
264
+        "defaults": {
265
+          "custom": {},
266
+          "mappings": [],
267
+          "thresholds": {
268
+            "mode": "absolute",
269
+            "steps": [
270
+              {
271
+                "color": "green",
272
+                "value": null
273
+              },
274
+              {
275
+                "color": "red",
276
+                "value": 80
277
+              }
278
+            ]
279
+          }
280
+        },
281
+        "overrides": []
282
+      },
283
+      "fill": 1,
284
+      "fillGradient": 0,
285
+      "gridPos": {
286
+        "h": 8,
287
+        "w": 12,
288
+        "x": 6,
289
+        "y": 8
290
+      },
291
+      "hiddenSeries": false,
292
+      "id": 11,
293
+      "interval": "1h",
294
+      "legend": {
295
+        "avg": false,
296
+        "current": false,
297
+        "max": false,
298
+        "min": false,
299
+        "show": true,
300
+        "total": false,
301
+        "values": false
302
+      },
303
+      "lines": false,
304
+      "linewidth": 1,
305
+      "nullPointMode": "null",
306
+      "options": {
307
+        "dataLinks": []
308
+      },
309
+      "percentage": false,
310
+      "pluginVersion": "7.0.0",
311
+      "pointradius": 2,
312
+      "points": false,
313
+      "renderer": "flot",
314
+      "seriesOverrides": [],
315
+      "spaceLength": 10,
316
+      "stack": false,
317
+      "steppedLine": false,
318
+      "targets": [
319
+        {
320
+          "format": "time_series",
321
+          "group": [],
322
+          "metricColumn": "none",
323
+          "rawQuery": true,
324
+          "rawSql": "SELECT\n  TIMESTAMP(date,time) as time,\n  Rainfall\nFROM weather\nWHERE $__timeFilter(time) and station_name = \"$Station\"\nORDER BY time ASC\n",
325
+          "refId": "A",
326
+          "select": [
327
+            [
328
+              {
329
+                "params": [
330
+                  "value"
331
+                ],
332
+                "type": "column"
333
+              }
334
+            ]
335
+          ],
336
+          "timeColumn": "time",
337
+          "where": [
338
+            {
339
+              "name": "$__timeFilter",
340
+              "params": [],
341
+              "type": "macro"
342
+            }
343
+          ]
344
+        }
345
+      ],
346
+      "thresholds": [],
347
+      "timeFrom": null,
348
+      "timeRegions": [],
349
+      "timeShift": null,
350
+      "title": "Rainfall",
351
+      "tooltip": {
352
+        "shared": true,
353
+        "sort": 0,
354
+        "value_type": "individual"
355
+      },
356
+      "type": "graph",
357
+      "xaxis": {
358
+        "buckets": null,
359
+        "mode": "time",
360
+        "name": null,
361
+        "show": true,
362
+        "values": []
363
+      },
364
+      "yaxes": [
365
+        {
366
+          "format": "lengthmm",
367
+          "label": null,
368
+          "logBase": 1,
369
+          "max": null,
370
+          "min": null,
371
+          "show": true
372
+        },
373
+        {
374
+          "format": "short",
375
+          "label": null,
376
+          "logBase": 1,
377
+          "max": null,
378
+          "min": null,
379
+          "show": true
380
+        }
381
+      ],
382
+      "yaxis": {
383
+        "align": false,
384
+        "alignLevel": null
385
+      }
386
+    },
387
+    {
388
+      "aliasColors": {
389
+        "Difference": "dark-purple",
390
+        "Evapotranspiration": "dark-orange",
391
+        "Rainfall": "dark-blue"
392
+      },
393
+      "bars": false,
394
+      "dashLength": 10,
395
+      "dashes": false,
396
+      "datasource": null,
397
+      "description": "",
398
+      "fieldConfig": {
399
+        "defaults": {
400
+          "custom": {}
401
+        },
402
+        "overrides": []
403
+      },
404
+      "fill": 1,
405
+      "fillGradient": 0,
406
+      "gridPos": {
407
+        "h": 9,
408
+        "w": 24,
409
+        "x": 0,
410
+        "y": 16
411
+      },
412
+      "hiddenSeries": false,
413
+      "id": 2,
414
+      "legend": {
415
+        "avg": false,
416
+        "current": false,
417
+        "max": false,
418
+        "min": false,
419
+        "show": true,
420
+        "total": false,
421
+        "values": false
422
+      },
423
+      "lines": true,
424
+      "linewidth": 1,
425
+      "nullPointMode": "null",
426
+      "options": {
427
+        "dataLinks": []
428
+      },
429
+      "percentage": false,
430
+      "pointradius": 2,
431
+      "points": false,
432
+      "renderer": "flot",
433
+      "seriesOverrides": [],
434
+      "spaceLength": 10,
435
+      "stack": false,
436
+      "steppedLine": false,
437
+      "targets": [
438
+        {
439
+          "format": "time_series",
440
+          "group": [],
441
+          "metricColumn": "none",
442
+          "rawQuery": true,
443
+          "rawSql": "SELECT TIMESTAMP(Date,'YYYY-MM-DD') as time,  (Rainfall - ETo) as Difference FROM aggregated_weather\nWHERE $__timeFilter(Date) AND station_name = \"$Station\"\nORDER BY time ASC\n",
444
+          "refId": "A",
445
+          "select": [
446
+            [
447
+              {
448
+                "params": [
449
+                  "value"
450
+                ],
451
+                "type": "column"
452
+              }
453
+            ]
454
+          ],
455
+          "timeColumn": "time",
456
+          "where": [
457
+            {
458
+              "name": "$__timeFilter",
459
+              "params": [],
460
+              "type": "macro"
461
+            }
462
+          ]
463
+        }
464
+      ],
465
+      "thresholds": [
466
+        {
467
+          "colorMode": "ok",
468
+          "fill": true,
469
+          "line": false,
470
+          "op": "gt",
471
+          "value": 0,
472
+          "yaxis": "left"
473
+        },
474
+        {
475
+          "colorMode": "warning",
476
+          "fill": true,
477
+          "line": false,
478
+          "op": "lt",
479
+          "value": 0,
480
+          "yaxis": "left"
481
+        },
482
+        {
483
+          "colorMode": "critical",
484
+          "fill": true,
485
+          "line": false,
486
+          "op": "lt",
487
+          "value": -3,
488
+          "yaxis": "left"
489
+        }
490
+      ],
491
+      "timeFrom": null,
492
+      "timeRegions": [],
493
+      "timeShift": null,
494
+      "title": "Rainfall vs Evapotranspiration",
495
+      "tooltip": {
496
+        "shared": true,
497
+        "sort": 0,
498
+        "value_type": "individual"
499
+      },
500
+      "transparent": true,
501
+      "type": "graph",
502
+      "xaxis": {
503
+        "buckets": null,
504
+        "mode": "time",
505
+        "name": null,
506
+        "show": true,
507
+        "values": []
508
+      },
509
+      "yaxes": [
510
+        {
511
+          "decimals": null,
512
+          "format": "lengthmm",
513
+          "label": null,
514
+          "logBase": 1,
515
+          "max": null,
516
+          "min": null,
517
+          "show": true
518
+        },
519
+        {
520
+          "format": "short",
521
+          "label": null,
522
+          "logBase": 1,
523
+          "max": null,
524
+          "min": null,
525
+          "show": true
526
+        }
527
+      ],
528
+      "yaxis": {
529
+        "align": false,
530
+        "alignLevel": null
531
+      }
532
+    },
533
+    {
534
+      "aliasColors": {},
535
+      "bars": false,
536
+      "dashLength": 10,
537
+      "dashes": false,
538
+      "datasource": null,
539
+      "description": "",
540
+      "fieldConfig": {
541
+        "defaults": {
542
+          "custom": {},
543
+          "mappings": [],
544
+          "thresholds": {
545
+            "mode": "absolute",
546
+            "steps": [
547
+              {
548
+                "color": "green",
549
+                "value": null
550
+              },
551
+              {
552
+                "color": "red",
553
+                "value": 80
554
+              }
555
+            ]
556
+          }
557
+        },
558
+        "overrides": []
559
+      },
560
+      "fill": 1,
561
+      "fillGradient": 0,
562
+      "gridPos": {
563
+        "h": 9,
564
+        "w": 24,
565
+        "x": 0,
566
+        "y": 25
567
+      },
568
+      "hiddenSeries": false,
569
+      "id": 3,
570
+      "legend": {
571
+        "avg": false,
572
+        "current": false,
573
+        "max": false,
574
+        "min": false,
575
+        "show": true,
576
+        "total": false,
577
+        "values": false
578
+      },
579
+      "lines": true,
580
+      "linewidth": 1,
581
+      "nullPointMode": "null",
582
+      "options": {
583
+        "dataLinks": []
584
+      },
585
+      "percentage": false,
586
+      "pluginVersion": "7.0.0",
587
+      "pointradius": 2,
588
+      "points": false,
589
+      "renderer": "flot",
590
+      "seriesOverrides": [],
591
+      "spaceLength": 10,
592
+      "stack": false,
593
+      "steppedLine": false,
594
+      "targets": [
595
+        {
596
+          "format": "time_series",
597
+          "group": [],
598
+          "metricColumn": "none",
599
+          "rawQuery": true,
600
+          "rawSql": "select TIMESTAMP(date,time) as time, temp as \"Temperature\" from weather\nWHERE $__timeFilter(Date) AND station_name = \"$Station\"\nORDER BY time ASC\n",
601
+          "refId": "A",
602
+          "select": [
603
+            [
604
+              {
605
+                "params": [
606
+                  "value"
607
+                ],
608
+                "type": "column"
609
+              }
610
+            ]
611
+          ],
612
+          "timeColumn": "time",
613
+          "where": [
614
+            {
615
+              "name": "$__timeFilter",
616
+              "params": [],
617
+              "type": "macro"
618
+            }
619
+          ]
620
+        }
621
+      ],
622
+      "thresholds": [
623
+        {
624
+          "colorMode": "ok",
625
+          "fill": true,
626
+          "line": true,
627
+          "op": "gt",
628
+          "value": 3,
629
+          "yaxis": "left"
630
+        },
631
+        {
632
+          "colorMode": "warning",
633
+          "fill": true,
634
+          "line": true,
635
+          "op": "lt",
636
+          "value": 3,
637
+          "yaxis": "left"
638
+        },
639
+        {
640
+          "colorMode": "critical",
641
+          "fill": true,
642
+          "line": true,
643
+          "op": "lt",
644
+          "value": 0,
645
+          "yaxis": "left"
646
+        }
647
+      ],
648
+      "timeFrom": null,
649
+      "timeRegions": [],
650
+      "timeShift": null,
651
+      "title": "Temperature",
652
+      "tooltip": {
653
+        "shared": true,
654
+        "sort": 0,
655
+        "value_type": "individual"
656
+      },
657
+      "transparent": true,
658
+      "type": "graph",
659
+      "xaxis": {
660
+        "buckets": null,
661
+        "mode": "time",
662
+        "name": null,
663
+        "show": true,
664
+        "values": []
665
+      },
666
+      "yaxes": [
667
+        {
668
+          "format": "celsius",
669
+          "label": null,
670
+          "logBase": 1,
671
+          "max": null,
672
+          "min": null,
673
+          "show": true
674
+        },
675
+        {
676
+          "format": "short",
677
+          "label": null,
678
+          "logBase": 1,
679
+          "max": null,
680
+          "min": null,
681
+          "show": true
682
+        }
683
+      ],
684
+      "yaxis": {
685
+        "align": false,
686
+        "alignLevel": null
687
+      }
688
+    },
689
+    {
690
+      "aliasColors": {},
691
+      "bars": false,
692
+      "dashLength": 10,
693
+      "dashes": false,
694
+      "datasource": null,
695
+      "description": "",
696
+      "fieldConfig": {
697
+        "defaults": {
698
+          "custom": {
699
+            "align": null
700
+          },
701
+          "mappings": [],
702
+          "thresholds": {
703
+            "mode": "absolute",
704
+            "steps": [
705
+              {
706
+                "color": "green",
707
+                "value": null
708
+              },
709
+              {
710
+                "color": "red",
711
+                "value": 80
712
+              }
713
+            ]
714
+          }
715
+        },
716
+        "overrides": []
717
+      },
718
+      "fill": 1,
719
+      "fillGradient": 0,
720
+      "gridPos": {
721
+        "h": 9,
722
+        "w": 24,
723
+        "x": 0,
724
+        "y": 34
725
+      },
726
+      "hiddenSeries": false,
727
+      "id": 4,
728
+      "legend": {
729
+        "avg": false,
730
+        "current": false,
731
+        "max": false,
732
+        "min": false,
733
+        "show": true,
734
+        "total": false,
735
+        "values": false
736
+      },
737
+      "lines": true,
738
+      "linewidth": 1,
739
+      "nullPointMode": "null",
740
+      "options": {
741
+        "dataLinks": []
742
+      },
743
+      "percentage": false,
744
+      "pluginVersion": "7.0.0",
745
+      "pointradius": 2,
746
+      "points": false,
747
+      "renderer": "flot",
748
+      "seriesOverrides": [],
749
+      "spaceLength": 10,
750
+      "stack": false,
751
+      "steppedLine": false,
752
+      "targets": [
753
+        {
754
+          "format": "time_series",
755
+          "group": [],
756
+          "metricColumn": "none",
757
+          "rawQuery": true,
758
+          "rawSql": "select TIMESTAMP(date,time) as time, windspeed as \"Windspeed\" from weather\nWHERE $__timeFilter(Date) AND station_name = \"$Station\"\nORDER BY time ASC\n",
759
+          "refId": "A",
760
+          "select": [
761
+            [
762
+              {
763
+                "params": [
764
+                  "value"
765
+                ],
766
+                "type": "column"
767
+              }
768
+            ]
769
+          ],
770
+          "timeColumn": "time",
771
+          "where": [
772
+            {
773
+              "name": "$__timeFilter",
774
+              "params": [],
775
+              "type": "macro"
776
+            }
777
+          ]
778
+        }
779
+      ],
780
+      "thresholds": [
781
+        {
782
+          "colorMode": "ok",
783
+          "fill": true,
784
+          "line": true,
785
+          "op": "lt",
786
+          "value": 15,
787
+          "yaxis": "left"
788
+        },
789
+        {
790
+          "colorMode": "warning",
791
+          "fill": true,
792
+          "line": true,
793
+          "op": "gt",
794
+          "value": 15,
795
+          "yaxis": "left"
796
+        },
797
+        {
798
+          "colorMode": "critical",
799
+          "fill": true,
800
+          "line": true,
801
+          "op": "gt",
802
+          "value": 25,
803
+          "yaxis": "left"
804
+        }
805
+      ],
806
+      "timeFrom": null,
807
+      "timeRegions": [],
808
+      "timeShift": null,
809
+      "title": "Wind",
810
+      "tooltip": {
811
+        "shared": true,
812
+        "sort": 0,
813
+        "value_type": "individual"
814
+      },
815
+      "transparent": true,
816
+      "type": "graph",
817
+      "xaxis": {
818
+        "buckets": null,
819
+        "mode": "time",
820
+        "name": null,
821
+        "show": true,
822
+        "values": []
823
+      },
824
+      "yaxes": [
825
+        {
826
+          "format": "velocityms",
827
+          "label": null,
828
+          "logBase": 1,
829
+          "max": null,
830
+          "min": null,
831
+          "show": true
832
+        },
833
+        {
834
+          "format": "short",
835
+          "label": null,
836
+          "logBase": 1,
837
+          "max": null,
838
+          "min": null,
839
+          "show": true
840
+        }
841
+      ],
842
+      "yaxis": {
843
+        "align": false,
844
+        "alignLevel": null
845
+      }
846
+    }
847
+  ],
848
+  "refresh": false,
849
+  "schemaVersion": 25,
850
+  "style": "dark",
851
+  "tags": [],
852
+  "templating": {
853
+    "list": [
854
+      {
855
+        "allValue": null,
856
+        "current": {
857
+          "selected": true,
858
+          "text": "Tullinge A",
859
+          "value": "Tullinge A"
860
+        },
861
+        "datasource": "MySQL",
862
+        "definition": "SELECT DISTINCT station_name from weather",
863
+        "hide": 0,
864
+        "includeAll": false,
865
+        "label": null,
866
+        "multi": false,
867
+        "name": "Station",
868
+        "options": [],
869
+        "query": "SELECT DISTINCT station_name from weather",
870
+        "refresh": 1,
871
+        "regex": "",
872
+        "skipUrlSync": false,
873
+        "sort": 3,
874
+        "tagValuesQuery": "",
875
+        "tags": [],
876
+        "tagsQuery": "",
877
+        "type": "query",
878
+        "useTags": false
879
+      }
880
+    ]
881
+  },
882
+  "time": {
883
+    "from": "now/y",
884
+    "to": "now"
885
+  },
886
+  "timepicker": {
887
+    "refresh_intervals": [
888
+      "10s",
889
+      "30s",
890
+      "1m",
891
+      "5m",
892
+      "15m",
893
+      "30m",
894
+      "1h",
895
+      "2h",
896
+      "1d"
897
+    ]
898
+  },
899
+  "timezone": "",
900
+  "title": "Weather",
901
+  "uid": "jMywAWkGz",
902
+  "version": 21
903
+}

+ 2
- 2
weather.ini View File

@@ -1,8 +1,8 @@
1 1
 [MySQL]
2 2
 database = weather
3 3
 host = localhost
4
-user = your_user_name
5
-password = secret_password
4
+user = weather
5
+password = c6y4wv7Qe4JUQjCK3P3uviTJga3KZRpPvPSGVxgC
6 6
 
7 7
 [SMHI]
8 8
 station = 97100

Loading…
Cancel
Save