Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Beide Seiten der vorigen Revision Vorhergehende Überarbeitung Nächste Überarbeitung | Vorhergehende Überarbeitung | ||
wetter:wview:config [06.03.2010 21:37. ] – Hinweis zum Erstellen des Patches eingefügt. django | wetter:wview:config [31.10.2023 18:27. ] (aktuell) – Externe Bearbeitung 127.0.0.1 | ||
---|---|---|---|
Zeile 1: | Zeile 1: | ||
+ | ====== IV) Konfiguration von wview ====== | ||
+ | Bei der Installation von **wview** wurde beim abschließenden Schritt **//make install-env// | ||
+ | |||
+ | ===== Einrichtung eines virtuellen Hosts ===== | ||
+ | Für die spätere Administration richten wir uns einen eigenen V-Host ein. Hierzu ergänzen wir unsere V-Host-Konfigurationsdatei unter **/ | ||
+ | # vim / | ||
+ | <code apache vhost.conf> | ||
+ | # | ||
+ | # wviewadmin.nausch.org | ||
+ | # | ||
+ | < | ||
+ | ServerAdmin webmaster@nausch.org | ||
+ | ServerName wviewadmin.nausch.org: | ||
+ | ServerAlias wviewadmin.nausch.org www.wviewadmin.nausch.org | ||
+ | ServerPath / | ||
+ | DocumentRoot "/ | ||
+ | < | ||
+ | Options FollowSymLinks | ||
+ | AllowOverride AuthConfig | ||
+ | Order allow,deny | ||
+ | Allow from all | ||
+ | </ | ||
+ | AddType application/ | ||
+ | DirectoryIndex login.php | ||
+ | ErrorLog logs/ | ||
+ | CustomLog logs/ | ||
+ | </ | ||
+ | </ | ||
+ | Nach dieser Konfigurationsänderung aktivieren wir unseren neuen V-Host, in dem wir den Apache-Server einmal durchstarten. | ||
+ | # service httpd restart | ||
+ | |||
+ | ===== Weather View Management über den Webbrowser ===== | ||
+ | ==== wview Systemstart ==== | ||
+ | Den ersten Systemstart unseres neu aufgesetzten Systems erreichen wir durch den Aufruf der Startdatei **wview**. | ||
+ | # / | ||
+ | |||
+ | Im Syslog wird der erste Systemstart von **wview** entsprechend dokumentiert. | ||
+ | |||
+ | < | ||
+ | Aug 1 22:08:29 vml000020 radmrouted[12809]: | ||
+ | Aug 1 22:08:29 vml000020 radmrouted[12809]: | ||
+ | Aug 1 22:08:31 vml000020 wviewd[12813]: | ||
+ | Aug 1 22:08:31 vml000020 wviewd[12813]: | ||
+ | Aug 1 22:08:31 vml000020 wviewd[12813]: | ||
+ | Aug 1 22:08:31 vml000020 wviewd[12813]: | ||
+ | Aug 1 22:08:31 vml000020 wviewd[12813]: | ||
+ | Aug 1 22:08:31 vml000020 wviewd[12813]: | ||
+ | Aug 1 22:08:31 vml000020 wviewd[12813]: | ||
+ | Aug 1 22:08:31 vml000020 wviewd[12813]: | ||
+ | Aug 1 22:08:31 vml000020 wviewd[12813]: | ||
+ | Aug 1 22:08:31 vml000020 wviewd[12813]: | ||
+ | Aug 1 22:08:31 vml000020 wviewd[12813]: | ||
+ | Aug 1 22:08:31 vml000020 wviewd[12813]: | ||
+ | Aug 1 22:08:31 vml000020 wviewd[12813]: | ||
+ | Aug 1 22:08:31 vml000020 wviewd[12813]: | ||
+ | Aug 1 22:08:31 vml000020 wviewd[12813]: | ||
+ | Aug 1 22:08:31 vml000020 wviewd[12813]: | ||
+ | Aug 1 22:08:31 vml000020 wviewd[12813]: | ||
+ | Aug 1 22:08:31 vml000020 wviewd[12813]: | ||
+ | Aug 1 22:08:31 vml000020 wviewd[12813]: | ||
+ | Aug 1 22:08:31 vml000020 wviewd[12813]: | ||
+ | Aug 1 22:08:31 vml000020 wviewd[12813]: | ||
+ | Aug 1 22:08:31 vml000020 wviewd[12813]: | ||
+ | Aug 1 22:08:31 vml000020 wviewd[12813]: | ||
+ | Aug 1 22:08:31 vml000020 wviewd[12813]: | ||
+ | Aug 1 22:08:31 vml000020 wviewd[12813]: | ||
+ | Aug 1 22:08:31 vml000020 wviewd[12813]: | ||
+ | Aug 1 22:08:31 vml000020 wviewd[12813]: | ||
+ | Aug 1 22:08:31 vml000020 wviewd[12813]: | ||
+ | Aug 1 22:08:31 vml000020 wviewd[12813]: | ||
+ | Aug 1 22:08:31 vml000020 wviewd[12813]: | ||
+ | Aug 1 22:08:31 vml000020 wviewd[12813]: | ||
+ | Aug 1 22:08:31 vml000020 wviewd[12813]: | ||
+ | Aug 1 22:08:31 vml000020 wviewd[12813]: | ||
+ | Aug 1 22:08:31 vml000020 wviewd[12813]: | ||
+ | Aug 1 22:08:31 vml000020 wviewd[12813]: | ||
+ | Aug 1 22:08:31 vml000020 wviewd[12813]: | ||
+ | Aug 1 22:08:31 vml000020 wviewd[12813]: | ||
+ | Aug 1 22:08:31 vml000020 wviewd[12813]: | ||
+ | Aug 1 22:08:31 vml000020 wviewd[12813]: | ||
+ | Aug 1 22:08:31 vml000020 wviewd[12813]: | ||
+ | Aug 1 22:08:31 vml000020 wviewd[12813]: | ||
+ | Aug 1 22:08:31 vml000020 wviewd[12813]: | ||
+ | Aug 1 22:08:31 vml000020 wviewd[12813]: | ||
+ | Aug 1 22:08:31 vml000020 wviewd[12813]: | ||
+ | Aug 1 22:08:31 vml000020 wviewd[12813]: | ||
+ | Aug 1 22:08:31 vml000020 wviewd[12813]: | ||
+ | Aug 1 22:08:32 vml000020 htmlgend[12817]: | ||
+ | Aug 1 22:08:32 vml000020 htmlgend[12817]: | ||
+ | Aug 1 22:08:32 vml000020 htmlgend[12817]: | ||
+ | Aug 1 22:08:32 vml000020 htmlgend[12817]: | ||
+ | Aug 1 22:08:32 vml000020 htmlgend[12817]: | ||
+ | Aug 1 22:08:32 vml000020 htmlgend[12817]: | ||
+ | Aug 1 22:08:32 vml000020 wvalarmd[12820]: | ||
+ | Aug 1 22:08:32 vml000020 wvalarmd[12820]: | ||
+ | Aug 1 22:08:32 vml000020 wvcwopd[12823]: | ||
+ | Aug 1 22:08:32 vml000020 wvcwopd[12823]: | ||
+ | Aug 1 22:08:32 vml000020 wvhttpd[12826]: | ||
+ | Aug 1 22:08:32 vml000020 wvhttpd[12826]: | ||
+ | Aug 1 22:08:32 vml000020 wviewftpd[12829]: | ||
+ | Aug 1 22:08:32 vml000020 wviewftpd[12829]: | ||
+ | Aug 1 22:08:32 vml000020 wviewsshd[12832]: | ||
+ | Aug 1 22:08:32 vml000020 wviewsshd[12832]: | ||
+ | Aug 1 22:08:32 vml000020 wviewsshd[12832]: | ||
+ | Aug 1 22:08:32 vml000020 wvpmond[12835]: | ||
+ | Aug 1 22:08:32 vml000020 wvpmond[12835]: | ||
+ | Aug 1 22:08:32 vml000020 radmrouted[12809]: | ||
+ | Aug 1 22:08:32 vml000020 wvpmond[12835]: | ||
+ | Aug 1 22:08:32 vml000020 wvpmond[12835]: | ||
+ | Aug 1 22:08:32 vml000020 wvpmond[12835]: | ||
+ | Aug 1 22:08:32 vml000020 wvpmond[12835]: | ||
+ | Aug 1 22:08:32 vml000020 wvpmond[12835]: | ||
+ | Aug 1 22:08:32 vml000020 wvpmond[12835]: | ||
+ | Aug 1 22:08:32 vml000020 wvpmond[12835]: | ||
+ | Aug 1 22:08:32 vml000020 wvpmond[12835]: | ||
+ | Aug 1 22:08:32 vml000020 wvpmond[12835]: | ||
+ | Aug 1 22:08:32 vml000020 wvpmond[12835]: | ||
+ | Aug 1 22:08:32 vml000020 htmlgend[12817]: | ||
+ | Aug 1 22:08:32 vml000020 htmlgend[12817]: | ||
+ | Aug 1 22:08:32 vml000020 htmlgend[12817]: | ||
+ | Aug 1 22:08:32 vml000020 htmlgend[12817]: | ||
+ | Aug 1 22:08:32 vml000020 htmlgend[12817]: | ||
+ | Aug 1 22:08:32 vml000020 htmlgend[12817]: | ||
+ | Aug 1 22:08:32 vml000020 radmrouted[12809]: | ||
+ | Aug 1 22:08:32 vml000020 htmlgend[12817]: | ||
+ | Aug 1 22:08:32 vml000020 htmlgend[12817]: | ||
+ | Aug 1 22:08:32 vml000020 htmlgend[12817]: | ||
+ | Aug 1 22:08:32 vml000020 htmlgend[12817]: | ||
+ | Aug 1 22:08:32 vml000020 htmlgend[12817]: | ||
+ | Aug 1 22:08:32 vml000020 htmlgend[12817]: | ||
+ | Aug 1 22:08:32 vml000020 htmlgend[12817]: | ||
+ | Aug 1 22:08:32 vml000020 htmlgend[12817]: | ||
+ | Aug 1 22:08:32 vml000020 htmlgend[12817]: | ||
+ | Aug 1 22:08:32 vml000020 htmlgend[12817]: | ||
+ | Aug 1 22:08:32 vml000020 htmlgend[12817]: | ||
+ | Aug 1 22:08:32 vml000020 htmlgend[12817]: | ||
+ | Aug 1 22:08:32 vml000020 htmlgend[12817]: | ||
+ | Aug 1 22:08:32 vml000020 htmlgend[12817]: | ||
+ | Aug 1 22:08:32 vml000020 htmlgend[12817]: | ||
+ | Aug 1 22:08:32 vml000020 htmlgend[12817]: | ||
+ | Aug 1 22:08:32 vml000020 htmlgend[12817]: | ||
+ | Aug 1 22:08:32 vml000020 htmlgend[12817]: | ||
+ | Aug 1 22:08:32 vml000020 htmlgend[12817]: | ||
+ | Aug 1 22:08:32 vml000020 htmlgend[12817]: | ||
+ | Aug 1 22:08:32 vml000020 htmlgend[12817]: | ||
+ | Aug 1 22:08:32 vml000020 htmlgend[12817]: | ||
+ | Aug 1 22:08:32 vml000020 htmlgend[12817]: | ||
+ | Aug 1 22:08:32 vml000020 htmlgend[12817]: | ||
+ | Aug 1 22:08:32 vml000020 htmlgend[12817]: | ||
+ | Aug 1 22:08:32 vml000020 htmlgend[12817]: | ||
+ | Aug 1 22:08:32 vml000020 htmlgend[12817]: | ||
+ | Aug 1 22:08:32 vml000020 htmlgend[12817]: | ||
+ | Aug 1 22:08:32 vml000020 htmlgend[12817]: | ||
+ | Aug 1 22:08:32 vml000020 htmlgend[12817]: | ||
+ | Aug 1 22:08:32 vml000020 htmlgend[12817]: | ||
+ | Aug 1 22:08:32 vml000020 htmlgend[12817]: | ||
+ | Aug 1 22:08:32 vml000020 htmlgend[12817]: | ||
+ | Aug 1 22:08:32 vml000020 htmlgend[12817]: | ||
+ | Aug 1 22:08:32 vml000020 htmlgend[12817]: | ||
+ | Aug 1 22:08:32 vml000020 htmlgend[12817]: | ||
+ | Aug 1 22:08:32 vml000020 htmlgend[12817]: | ||
+ | Aug 1 22:08:32 vml000020 htmlgend[12817]: | ||
+ | Aug 1 22:08:32 vml000020 htmlgend[12817]: | ||
+ | Aug 1 22:08:32 vml000020 htmlgend[12817]: | ||
+ | Aug 1 22:08:32 vml000020 htmlgend[12817]: | ||
+ | Aug 1 22:08:32 vml000020 htmlgend[12817]: | ||
+ | Aug 1 22:08:32 vml000020 htmlgend[12817]: | ||
+ | Aug 1 22:08:32 vml000020 htmlgend[12817]: | ||
+ | Aug 1 22:08:33 vml000020 htmlgend[12817]: | ||
+ | Aug 1 22:08:33 vml000020 htmlgend[12817]: | ||
+ | Aug 1 22:08:33 vml000020 htmlgend[12817]: | ||
+ | Aug 1 22:10:04 vml000020 wviewd[12813]: | ||
+ | Aug 1 22:10:04 vml000020 htmlgend[12817]: | ||
+ | </ | ||
+ | ==== Aufruf im Browser ==== | ||
+ | Wir erreichen nun **__The New Way to Manage wview__** über https:// | ||
+ | |||
+ | {{ : | ||
+ | |||
+ | Das initiale Passwort **// | ||
+ | |||
+ | {{ : | ||
+ | |||
+ | Das initiale Passwort **// | ||
+ | |||
+ | Da **wview** beim initialen Start wegen der fehlenden Konfigurationsfiles, | ||
+ | |||
+ | Folgende Seite zeigt die Einstellungsmöglichkeiten zu den // | ||
+ | |||
+ | {{ : | ||
+ | |||
+ | Die Einstellungen zur // | ||
+ | |||
+ | {{ : | ||
+ | |||
+ | Für die Generierung der einzelnen Dateien haben wir unter //**File Generation**// | ||
+ | |||
+ | {{ : | ||
+ | |||
+ | Die Definition der Alarme erfolgt im Reiter // | ||
+ | |||
+ | {{ : | ||
+ | |||
+ | Der Dateiupload via FTP erfolgt im gleichnamigen Reiter // | ||
+ | |||
+ | {{ : | ||
+ | |||
+ | Für die Dateiübertragung mittels **scp** tragen wir auf dem Reiter //**SSH**// die nötigen Daten ein. | ||
+ | |||
+ | {{ : | ||
+ | |||
+ | Nutzen wir **CWOP** so geben wir im gleichnamigen Reiter // | ||
+ | |||
+ | {{ : | ||
+ | |||
+ | Die beiden HTTP-Services **Weather For You** und **Weather Underground** werden in Reiter // | ||
+ | |||
+ | {{ : | ||
+ | |||
+ | Zur Calibrierung der Messwerte steht der Reiter // | ||
+ | |||
+ | {{ : | ||
+ | |||
+ | Wollen wir die Messwerte in einer SQL-Datenbanktabelle ablegen, so definieren wir im Reiter //**SQL Export**// die hierzu nötigen Daten. | ||
+ | |||
+ | {{ : | ||
+ | |||
+ | Zu guter letzt haben wir noch die Möglichkeit uns über den Menüpunkt // | ||
+ | |||
+ | {{ : | ||
+ | |||
+ | ===== Grundeinstellungen ===== | ||
+ | Bei der Erstinstallation und -konfiguration der Vantage Pro 2 Konsole sind einige grundlegende Angaben der Konsole und auch dem **wview**-/ | ||
+ | ==== vpinstall ==== | ||
+ | Zur initialen Konfiguration der Wetterkonsole rufen wir das Script **vpinstall** auf. | ||
+ | |||
+ | Der Wert für die Höhe der Wetterstation über NormalNull ist dabei in //Fuss// anzugeben - über ein online-Tool, | ||
+ | |||
+ | * 48,2° Nord und 11,8° Ost | ||
+ | * // | ||
+ | |||
+ | # vpinstall | ||
+ | <code bash>################################################################################ | ||
+ | |||
+ | --> Installation Configuration for Vantage Pro(2) Console | ||
+ | |||
+ | --> To reset historical highs and lows, use the Vantage Pro Console | ||
+ | |||
+ | --> Note: values in parenthesis are used if you hit enter at a prompt... | ||
+ | |||
+ | ################################################################################ | ||
+ | |||
+ | |||
+ | ------------------------------------------------------------- | ||
+ | --NOTE-- ** Serial and USB data loggers are both considered serial - | ||
+ | --NOTE-- | ||
+ | --NOTE-- ** If your Vantage Pro is connected to a terminal or serial server, | ||
+ | --NOTE-- | ||
+ | --NOTE-- | ||
+ | Serial port or host:port the VP console is connected to (i.e. /dev/ttyS0, mss1:3001) | ||
+ | (/ | ||
+ | |||
+ | ------------------------------------------------------------- | ||
+ | Desired archive interval (minutes) (5, | ||
+ | (5): | ||
+ | |||
+ | ------------------------------------------------------------- | ||
+ | Station elevation (feet) ((-2000) - (15000)) | ||
+ | (0): 1654 | ||
+ | |||
+ | ------------------------------------------------------------- | ||
+ | Station latitude (tenths of degrees) ((-900) - (900), (-) => South) | ||
+ | (0): 482 | ||
+ | |||
+ | ------------------------------------------------------------- | ||
+ | Station longitude (tenths of degrees) ((-1799) - (1800), (-) => West) | ||
+ | (0): 118 | ||
+ | |||
+ | ------------------------------------------------------------- | ||
+ | Rain season start (month) (1 - 12) | ||
+ | (1): | ||
+ | |||
+ | ------------------------------------------------------------- | ||
+ | Year-to-Date Rain (inches) (0.00 - 200.00) | ||
+ | (0.00): | ||
+ | |||
+ | ------------------------------------------------------------- | ||
+ | Year-to-Date ET (inches) (0.00 - 200.00) | ||
+ | (0.00): | ||
+ | |||
+ | |||
+ | ------------------------------------------------------------- | ||
+ | Let's review your answers: | ||
+ | |||
+ | VP Console Device: | ||
+ | Archive Interval: | ||
+ | Station Elevation: | ||
+ | Station Latitude: | ||
+ | Station Longitude: | ||
+ | Rain Season Start Month: | ||
+ | Year-to-Date Rain: 0 | ||
+ | Year-to-Date ET: 0 | ||
+ | ------------------------------------------------------------- | ||
+ | |||
+ | WARNING: All archive records will be erased on the VP console! | ||
+ | Do you want to proceed with these values? (y/n) | ||
+ | (n): y | ||
+ | |||
+ | Configuring with new values (takes some time, be patient) ... | ||
+ | |||
+ | elevation set to 1654 feet | ||
+ | rain season start month set to 1 | ||
+ | rain year-to-date set to 0.00 | ||
+ | ET year-to-date set to 0.00 | ||
+ | archive memory cleared and interval set to 5 minutes | ||
+ | latitude set to 48.2, longitude set to 11.8 | ||
+ | |||
+ | Please wait - allowing VP console to digest new settings ..... | ||
+ | |||
+ | |||
+ | Firmware Version: | ||
+ | Station Location: | ||
+ | Archive Interval: | ||
+ | Rain Season Start Month: 1 | ||
+ | Wind direction calibration: | ||
+ | Listening on channel: | ||
+ | Listening on channel: | ||
+ | Retransmit channel: | ||
+ | Rain collector size: 0.2 mm | ||
+ | Wind cup size: large | ||
+ | RX Check Stats: | ||
+ | |||
+ | |||
+ | ################################################################################ | ||
+ | It is advisable to wait 5 minutes before starting wview for the | ||
+ | first time so the Vantage Pro can become consistent with the new settings... | ||
+ | |||
+ | In the meantime, be sure you have deleted any archive files in | ||
+ | / | ||
+ | |||
+ | Vantage Pro configuration complete! | ||
+ | |||
+ | ################################################################################ | ||
+ | |||
+ | </ | ||
+ | |||
+ | < | ||
+ | |||
+ | ################################################################################ | ||
+ | |||
+ | --> Installation Configuration for Vantage Pro(2) Console | ||
+ | |||
+ | --> To reset historical highs and lows, use the Vantage Pro Console | ||
+ | |||
+ | --> Note: values in parenthesis are used if you hit enter at a prompt... | ||
+ | |||
+ | ################################################################################ | ||
+ | |||
+ | |||
+ | ------------------------------------------------------------- | ||
+ | --NOTE-- ** Serial and USB data loggers are both considered serial - | ||
+ | --NOTE-- | ||
+ | --NOTE-- ** If your Vantage Pro is connected to a terminal or serial server, | ||
+ | --NOTE-- | ||
+ | --NOTE-- | ||
+ | Serial port or host:port the VP console is connected to (i.e. /dev/ttyS0, mss1:3001) | ||
+ | (/ | ||
+ | |||
+ | ------------------------------------------------------------- | ||
+ | Desired archive interval (minutes) (5, | ||
+ | (5): | ||
+ | |||
+ | ------------------------------------------------------------- | ||
+ | Station elevation (feet) ((-2000) - (15000)) | ||
+ | (0): 1654 | ||
+ | |||
+ | ------------------------------------------------------------- | ||
+ | Station latitude (tenths of degrees) ((-900) - (900), (-) => South) | ||
+ | (0): 482 | ||
+ | |||
+ | ------------------------------------------------------------- | ||
+ | Station longitude (tenths of degrees) ((-1799) - (1800), (-) => West) | ||
+ | (0): 118 | ||
+ | |||
+ | ------------------------------------------------------------- | ||
+ | Rain season start (month) (1 - 12) | ||
+ | (1): | ||
+ | |||
+ | ------------------------------------------------------------- | ||
+ | Year-to-Date Rain (inches) (0.00 - 200.00) | ||
+ | (0.00): | ||
+ | |||
+ | ------------------------------------------------------------- | ||
+ | Year-to-Date ET (inches) (0.00 - 200.00) | ||
+ | (0.00): | ||
+ | |||
+ | |||
+ | ------------------------------------------------------------- | ||
+ | Let's review your answers: | ||
+ | |||
+ | VP Console Device: | ||
+ | Archive Interval: | ||
+ | Station Elevation: | ||
+ | Station Latitude: | ||
+ | Station Longitude: | ||
+ | Rain Season Start Month: | ||
+ | Year-to-Date Rain: 0 | ||
+ | Year-to-Date ET: 0 | ||
+ | ------------------------------------------------------------- | ||
+ | |||
+ | WARNING: All archive records will be erased on the VP console! | ||
+ | Do you want to proceed with these values? (y/n) | ||
+ | (n): n | ||
+ | |||
+ | Configuring with new values (takes some time, be patient) ... | ||
+ | |||
+ | elevation set to 1654 feet | ||
+ | rain season start month set to 1 | ||
+ | rain year-to-date set to 0.00 | ||
+ | ET year-to-date set to 0.00 | ||
+ | archive memory cleared and interval set to 5 minutes | ||
+ | latitude set to 48.2, longitude set to 11.8 | ||
+ | |||
+ | Please wait - allowing VP console to digest new settings ..... | ||
+ | |||
+ | |||
+ | Firmware Version: | ||
+ | Station Location: | ||
+ | Archive Interval: | ||
+ | Rain Season Start Month: 1 | ||
+ | RX Check Stats: | ||
+ | |||
+ | |||
+ | ################################################################################ | ||
+ | It is advisable to wait 5 minutes before starting wview for the | ||
+ | first time so the Vantage Pro can become consistent with the new settings... | ||
+ | |||
+ | In the meantime, be sure you have deleted any archive files in | ||
+ | / | ||
+ | |||
+ | Vantage Pro configuration complete! | ||
+ | |||
+ | ################################################################################</ | ||
+ | ==== wview Management ==== | ||
+ | Zum Einstellen der grundlegenden Konfiguration rund um **wview** bedienen wir uns am einfachsten der **WEB-GUI**, | ||
+ | |||
+ | Im Webbrowser unser Wahl rufen wir also die definierte Adresse unseres [[https:// | ||
+ | |||
+ | ==== wviewhtmlconfig ==== | ||
+ | Zur Auswahl des gewünschten //Skins// bei der Installation, | ||
+ | # wviewhtmlconfig | ||
+ | |||
+ | <code bash>################################################################################ | ||
+ | | ||
+ | |||
+ | --> HTML Template Configuration for wview | ||
+ | |||
+ | --> Note: This script will save existing templates to / | ||
+ | before writing the new files based on your answers here - if that | ||
+ | is not what you want, hit CTRL-C now to abort this script! | ||
+ | |||
+ | ################################################################################ | ||
+ | |||
+ | pausing 5 seconds ..... | ||
+ | |||
+ | |||
+ | --------------------------------------------------------------------------- | ||
+ | Which template skin do you want to use for your site? | ||
+ | |||
+ | wview site skins currently supported: | ||
+ | classic - default wview skin | ||
+ | chrome | ||
+ | exfoliation - a clean implementation by Matthew Wall | ||
+ | (chrome): | ||
+ | Site skin chrome selected... | ||
+ | With extended data graphics. | ||
+ | With metric units. | ||
+ | Saving old HTML directory to html-20120801.223322 ... | ||
+ | ...done. | ||
+ | Saving old config files... | ||
+ | ... done. | ||
+ | HTML setup complete: | ||
+ | you may now customize template files in / | ||
+ | </ | ||
+ | |||
+ | |||
+ | < | ||
+ | |||
+ | ################################################################################ | ||
+ | | ||
+ | |||
+ | --> HTML Template Configuration for wview | ||
+ | |||
+ | --> Note: This script will save existing templates to / | ||
+ | before writing the new files based on your answers here - if that | ||
+ | is not what you want, hit CTRL-C now to abort this script! | ||
+ | |||
+ | ################################################################################ | ||
+ | |||
+ | pausing 5 seconds ..... | ||
+ | |||
+ | |||
+ | --------------------------------------------------------------------------- | ||
+ | Which template skin do you want to use for your site? | ||
+ | |||
+ | wview site skins currently supported: | ||
+ | classic - default wview skin | ||
+ | chrome | ||
+ | (chrome): | ||
+ | Site skin chrome selected... | ||
+ | With extended data graphics. | ||
+ | With metric units. | ||
+ | Saving old HTML directory to html-20090608.173037 ... | ||
+ | ...done. | ||
+ | Saving old config files... | ||
+ | ... done. | ||
+ | HTML setup complete: | ||
+ | you may now customize template files in / | ||
+ | ===== MySQL-Datenbankexport ===== | ||
+ | Zur Langzeitarchivierung und späteren Weiterverarbeitung legen wir unsere ermittelten Wetterdaten in einer MySQL-Datenbank-(tabelle) ab. Im Reiter **//SQL Export//** bei der Konfiguration über die Web-GUI [[https:// | ||
+ | * SQL Server = localhost | ||
+ | * SQL Server User Name = wview-user | ||
+ | * SQL server Password = Django_is_a_Geek | ||
+ | * SQL Datebase name = wviewDB | ||
+ | |||
+ | Bei der Erstellung der notwendigen Datenbank-(Tabelle) und des Datenbank-(Users) gibt es zwei Möglichkeiten: | ||
+ | * **I** die benutzerindividuelle manuelle Konfiguration | ||
+ | * **II** die Nutzung von **wview-mysql-export** aus dem Programmpaket **wview**, oder | ||
+ | |||
+ | Nachfolgend werden wir uns nun diese beiden Varianten genauer ansehen. | ||
+ | |||
+ | ==== I) benutzerindividuelle Konfiguration ==== | ||
+ | - **Datenbank anlegen** \\ Als erstes legen wir die Datenbank an. MySQL frägt uns bei den nachfolgenden Definitionen nach dem Passwort unseres mysql-Superusers **root**. < | ||
+ | Your MariaDB connection id is 63465 | ||
+ | Server version: 5.5.52-MariaDB MariaDB Server | ||
+ | |||
+ | Copyright (c) 2000, 2016, Oracle, MariaDB Corporation Ab and others. | ||
+ | |||
+ | Type ' | ||
+ | |||
+ | MariaDB [(none)]> | ||
+ | Query OK, 1 row affected (0.01 sec) | ||
+ | </ | ||
+ | - **neuen Benutzer anlegen** \\ Mit folgendem Befehl legen wir uns einen neuen Nutzer an:< | ||
+ | Query OK, 0 rows affected (0.00 sec) | ||
+ | |||
+ | MariaDB [(none)]> | ||
+ | MariaDB [(none)]> | ||
+ | Query OK, 0 rows affected (0.00 sec) | ||
+ | |||
+ | MariaDB [(none)]> | ||
+ | - **Benutzerprivilegien setzen und zuweisen** \\ Anschließend setzen wir die Benutzerrechte unseres gerade angelegten Datenbanknutzers. < | ||
+ | Query OK, 0 rows affected (0.01 sec) | ||
+ | |||
+ | MariaDB [(none)]></ | ||
+ | Query OK, 0 rows affected (0.01 sec) | ||
+ | |||
+ | MariaDB [(none)]></ | ||
+ | - **Rechte des Nutzers in der Datenbank neu laden** \\ Im letzten Schritt laden wir nun die Rechte unseres neuen Datenbankusers.< | ||
+ | Query OK, 0 rows affected (0.00 sec) | ||
+ | |||
+ | MariaDB [(none)]></ | ||
+ | - **mySQL-Datenbankverbindung beenden** \\ Unsere Konfiguration unseres neuen Datenbanknutzers ist hiermit beendet und wir können die Verbindung zur Datenbank wieder schliessen.< | ||
+ | Bye | ||
+ | </ | ||
+ | - **mySQL-Datenbanktabellen anlegen** \\ Als nächstes legen wir die notwendigen Datenbanktabellen an. Hierzu nutzen wir folgende Konfigurationsdatei. <file sql mysql-database-create> | ||
+ | -- version 2.11.11.3 | ||
+ | -- https:// | ||
+ | -- | ||
+ | -- Host: localhost | ||
+ | -- Erstellungszeit: | ||
+ | -- Server Version: 5.0.95 | ||
+ | -- PHP-Version: | ||
+ | |||
+ | SET SQL_MODE=" | ||
+ | |||
+ | -- | ||
+ | -- Datenbank: `wviewDB` | ||
+ | -- | ||
+ | |||
+ | USE wviewDB; | ||
+ | |||
+ | -- -------------------------------------------------------- | ||
+ | |||
+ | -- | ||
+ | -- Tabellenstruktur für Tabelle `archive` | ||
+ | -- | ||
+ | |||
+ | CREATE TABLE IF NOT EXISTS `archive` ( | ||
+ | `dateTime` int(11) NOT NULL, | ||
+ | `usUnits` int(11) NOT NULL, | ||
+ | `arcInt` int(11) NOT NULL, | ||
+ | `barometer` double default NULL, | ||
+ | `pressure` double default NULL, | ||
+ | `altimeter` double default NULL, | ||
+ | `inTemp` double default NULL, | ||
+ | `outTemp` double default NULL, | ||
+ | `inHumidity` double default NULL, | ||
+ | `outHumidity` double default NULL, | ||
+ | `windSpeed` double default NULL, | ||
+ | `windDir` double default NULL, | ||
+ | `windGust` double default NULL, | ||
+ | `windGustDir` double default NULL, | ||
+ | `rainRate` double default NULL, | ||
+ | `rain` double default NULL, | ||
+ | `dewpoint` double default NULL, | ||
+ | `windchill` double default NULL, | ||
+ | `heatindex` double default NULL, | ||
+ | `ET` double default NULL, | ||
+ | `radiation` double default NULL, | ||
+ | `UV` double default NULL, | ||
+ | `extraTemp1` double default NULL, | ||
+ | `extraTemp2` double default NULL, | ||
+ | `extraTemp3` double default NULL, | ||
+ | `soilTemp1` double default NULL, | ||
+ | `soilTemp2` double default NULL, | ||
+ | `soilTemp3` double default NULL, | ||
+ | `soilTemp4` double default NULL, | ||
+ | `leafTemp1` double default NULL, | ||
+ | `leafTemp2` double default NULL, | ||
+ | `extraHumid1` double default NULL, | ||
+ | `extraHumid2` double default NULL, | ||
+ | `soilMoist1` double default NULL, | ||
+ | `soilMoist2` double default NULL, | ||
+ | `soilMoist3` double default NULL, | ||
+ | `soilMoist4` double default NULL, | ||
+ | `leafWet1` double default NULL, | ||
+ | `leafWet2` double default NULL, | ||
+ | `rxCheckPercent` double default NULL, | ||
+ | `txBatteryStatus` double default NULL, | ||
+ | `consBatteryVoltage` double default NULL, | ||
+ | `hail` double default NULL, | ||
+ | `hailRate` double default NULL, | ||
+ | `heatingTemp` double default NULL, | ||
+ | `heatingVoltage` double default NULL, | ||
+ | `supplyVoltage` double default NULL, | ||
+ | `referenceVoltage` double default NULL, | ||
+ | `windBatteryStatus` double default NULL, | ||
+ | `rainBatteryStatus` double default NULL, | ||
+ | `outTempBatteryStatus` double default NULL, | ||
+ | `inTempBatteryStatus` double default NULL, | ||
+ | PRIMARY KEY (`dateTime`) | ||
+ | ) ENGINE=MyISAM DEFAULT CHARSET=latin1; | ||
+ | |||
+ | -- -------------------------------------------------------- | ||
+ | |||
+ | -- | ||
+ | -- Tabellenstruktur für Tabelle `baromPressure` | ||
+ | -- | ||
+ | |||
+ | CREATE TABLE IF NOT EXISTS `baromPressure` ( | ||
+ | `dateTime` int(11) NOT NULL, | ||
+ | `low` double default NULL, | ||
+ | `timeLow` int(11) default NULL, | ||
+ | `high` double default NULL, | ||
+ | `timeHigh` int(11) default NULL, | ||
+ | `whenHigh` double default NULL, | ||
+ | `cumulative` double default NULL, | ||
+ | `samples` int(11) default NULL, | ||
+ | PRIMARY KEY (`dateTime`) | ||
+ | ) ENGINE=MyISAM DEFAULT CHARSET=latin1; | ||
+ | |||
+ | -- -------------------------------------------------------- | ||
+ | |||
+ | -- | ||
+ | -- Tabellenstruktur für Tabelle `dewPoint` | ||
+ | -- | ||
+ | |||
+ | CREATE TABLE IF NOT EXISTS `dewPoint` ( | ||
+ | `dateTime` int(11) NOT NULL, | ||
+ | `low` double default NULL, | ||
+ | `timeLow` int(11) default NULL, | ||
+ | `high` double default NULL, | ||
+ | `timeHigh` int(11) default NULL, | ||
+ | `whenHigh` double default NULL, | ||
+ | `cumulative` double default NULL, | ||
+ | `samples` int(11) default NULL, | ||
+ | PRIMARY KEY (`dateTime`) | ||
+ | ) ENGINE=MyISAM DEFAULT CHARSET=latin1; | ||
+ | |||
+ | -- -------------------------------------------------------- | ||
+ | |||
+ | -- | ||
+ | -- Tabellenstruktur für Tabelle `ET` | ||
+ | -- | ||
+ | |||
+ | CREATE TABLE IF NOT EXISTS `ET` ( | ||
+ | `dateTime` int(11) NOT NULL, | ||
+ | `low` double default NULL, | ||
+ | `timeLow` int(11) default NULL, | ||
+ | `high` double default NULL, | ||
+ | `timeHigh` int(11) default NULL, | ||
+ | `whenHigh` double default NULL, | ||
+ | `cumulative` double default NULL, | ||
+ | `samples` int(11) default NULL, | ||
+ | PRIMARY KEY (`dateTime`) | ||
+ | ) ENGINE=MyISAM DEFAULT CHARSET=latin1; | ||
+ | |||
+ | -- -------------------------------------------------------- | ||
+ | |||
+ | -- | ||
+ | -- Tabellenstruktur für Tabelle `hail` | ||
+ | -- | ||
+ | |||
+ | CREATE TABLE IF NOT EXISTS `hail` ( | ||
+ | `dateTime` int(11) NOT NULL, | ||
+ | `low` double default NULL, | ||
+ | `timeLow` int(11) default NULL, | ||
+ | `high` double default NULL, | ||
+ | `timeHigh` int(11) default NULL, | ||
+ | `whenHigh` double default NULL, | ||
+ | `cumulative` double default NULL, | ||
+ | `samples` int(11) default NULL, | ||
+ | PRIMARY KEY (`dateTime`) | ||
+ | ) ENGINE=MyISAM DEFAULT CHARSET=latin1; | ||
+ | |||
+ | -- -------------------------------------------------------- | ||
+ | |||
+ | -- | ||
+ | -- Tabellenstruktur für Tabelle `hailRate` | ||
+ | -- | ||
+ | |||
+ | CREATE TABLE IF NOT EXISTS `hailRate` ( | ||
+ | `dateTime` int(11) NOT NULL, | ||
+ | `low` double default NULL, | ||
+ | `timeLow` int(11) default NULL, | ||
+ | `high` double default NULL, | ||
+ | `timeHigh` int(11) default NULL, | ||
+ | `whenHigh` double default NULL, | ||
+ | `cumulative` double default NULL, | ||
+ | `samples` int(11) default NULL, | ||
+ | PRIMARY KEY (`dateTime`) | ||
+ | ) ENGINE=MyISAM DEFAULT CHARSET=latin1; | ||
+ | |||
+ | -- -------------------------------------------------------- | ||
+ | |||
+ | -- | ||
+ | -- Tabellenstruktur für Tabelle `heatIndex` | ||
+ | -- | ||
+ | |||
+ | CREATE TABLE IF NOT EXISTS `heatIndex` ( | ||
+ | `dateTime` int(11) NOT NULL, | ||
+ | `low` double default NULL, | ||
+ | `timeLow` int(11) default NULL, | ||
+ | `high` double default NULL, | ||
+ | `timeHigh` int(11) default NULL, | ||
+ | `whenHigh` double default NULL, | ||
+ | `cumulative` double default NULL, | ||
+ | `samples` int(11) default NULL, | ||
+ | PRIMARY KEY (`dateTime`) | ||
+ | ) ENGINE=MyISAM DEFAULT CHARSET=latin1; | ||
+ | |||
+ | -- -------------------------------------------------------- | ||
+ | |||
+ | -- | ||
+ | -- Tabellenstruktur für Tabelle `inHumidity` | ||
+ | -- | ||
+ | |||
+ | CREATE TABLE IF NOT EXISTS `inHumidity` ( | ||
+ | `dateTime` int(11) NOT NULL, | ||
+ | `low` double default NULL, | ||
+ | `timeLow` int(11) default NULL, | ||
+ | `high` double default NULL, | ||
+ | `timeHigh` int(11) default NULL, | ||
+ | `whenHigh` double default NULL, | ||
+ | `cumulative` double default NULL, | ||
+ | `samples` int(11) default NULL, | ||
+ | PRIMARY KEY (`dateTime`) | ||
+ | ) ENGINE=MyISAM DEFAULT CHARSET=latin1; | ||
+ | |||
+ | -- -------------------------------------------------------- | ||
+ | |||
+ | -- | ||
+ | -- Tabellenstruktur für Tabelle `inTemp` | ||
+ | -- | ||
+ | |||
+ | CREATE TABLE IF NOT EXISTS `inTemp` ( | ||
+ | `dateTime` int(11) NOT NULL, | ||
+ | `low` double default NULL, | ||
+ | `timeLow` int(11) default NULL, | ||
+ | `high` double default NULL, | ||
+ | `timeHigh` int(11) default NULL, | ||
+ | `whenHigh` double default NULL, | ||
+ | `cumulative` double default NULL, | ||
+ | `samples` int(11) default NULL, | ||
+ | PRIMARY KEY (`dateTime`) | ||
+ | ) ENGINE=MyISAM DEFAULT CHARSET=latin1; | ||
+ | |||
+ | -- -------------------------------------------------------- | ||
+ | |||
+ | -- | ||
+ | -- Tabellenstruktur für Tabelle `noaaHistory` | ||
+ | -- | ||
+ | |||
+ | CREATE TABLE IF NOT EXISTS `noaaHistory` ( | ||
+ | `dateTime` int(11) NOT NULL, | ||
+ | `meanTemp` double default NULL, | ||
+ | `highTemp` double default NULL, | ||
+ | `highTempTime` int(11) default NULL, | ||
+ | `lowTemp` double default NULL, | ||
+ | `lowTempTime` int(11) default NULL, | ||
+ | `heatDegDays` double default NULL, | ||
+ | `coolDegDays` double default NULL, | ||
+ | `rain` double default NULL, | ||
+ | `avgWind` double default NULL, | ||
+ | `highWind` double default NULL, | ||
+ | `highWindTime` int(11) default NULL, | ||
+ | `domWindDir` int(11) default NULL, | ||
+ | PRIMARY KEY (`dateTime`) | ||
+ | ) ENGINE=MyISAM DEFAULT CHARSET=latin1; | ||
+ | |||
+ | -- -------------------------------------------------------- | ||
+ | |||
+ | -- | ||
+ | -- Tabellenstruktur für Tabelle `outHumidity` | ||
+ | -- | ||
+ | |||
+ | CREATE TABLE IF NOT EXISTS `outHumidity` ( | ||
+ | `dateTime` int(11) NOT NULL, | ||
+ | `low` double default NULL, | ||
+ | `timeLow` int(11) default NULL, | ||
+ | `high` double default NULL, | ||
+ | `timeHigh` int(11) default NULL, | ||
+ | `whenHigh` double default NULL, | ||
+ | `cumulative` double default NULL, | ||
+ | `samples` int(11) default NULL, | ||
+ | PRIMARY KEY (`dateTime`) | ||
+ | ) ENGINE=MyISAM DEFAULT CHARSET=latin1; | ||
+ | |||
+ | -- -------------------------------------------------------- | ||
+ | |||
+ | -- | ||
+ | -- Tabellenstruktur für Tabelle `outTemp` | ||
+ | -- | ||
+ | |||
+ | CREATE TABLE IF NOT EXISTS `outTemp` ( | ||
+ | `dateTime` int(11) NOT NULL, | ||
+ | `low` double default NULL, | ||
+ | `timeLow` int(11) default NULL, | ||
+ | `high` double default NULL, | ||
+ | `timeHigh` int(11) default NULL, | ||
+ | `whenHigh` double default NULL, | ||
+ | `cumulative` double default NULL, | ||
+ | `samples` int(11) default NULL, | ||
+ | PRIMARY KEY (`dateTime`) | ||
+ | ) ENGINE=MyISAM DEFAULT CHARSET=latin1; | ||
+ | |||
+ | -- -------------------------------------------------------- | ||
+ | |||
+ | -- | ||
+ | -- Tabellenstruktur für Tabelle `rain` | ||
+ | -- | ||
+ | |||
+ | CREATE TABLE IF NOT EXISTS `rain` ( | ||
+ | `dateTime` int(11) NOT NULL, | ||
+ | `low` double default NULL, | ||
+ | `timeLow` int(11) default NULL, | ||
+ | `high` double default NULL, | ||
+ | `timeHigh` int(11) default NULL, | ||
+ | `whenHigh` double default NULL, | ||
+ | `cumulative` double default NULL, | ||
+ | `samples` int(11) default NULL, | ||
+ | PRIMARY KEY (`dateTime`) | ||
+ | ) ENGINE=MyISAM DEFAULT CHARSET=latin1; | ||
+ | |||
+ | -- -------------------------------------------------------- | ||
+ | |||
+ | -- | ||
+ | -- Tabellenstruktur für Tabelle `rainRate` | ||
+ | -- | ||
+ | |||
+ | CREATE TABLE IF NOT EXISTS `rainRate` ( | ||
+ | `dateTime` int(11) NOT NULL, | ||
+ | `low` double default NULL, | ||
+ | `timeLow` int(11) default NULL, | ||
+ | `high` double default NULL, | ||
+ | `timeHigh` int(11) default NULL, | ||
+ | `whenHigh` double default NULL, | ||
+ | `cumulative` double default NULL, | ||
+ | `samples` int(11) default NULL, | ||
+ | PRIMARY KEY (`dateTime`) | ||
+ | ) ENGINE=MyISAM DEFAULT CHARSET=latin1; | ||
+ | |||
+ | -- -------------------------------------------------------- | ||
+ | |||
+ | -- | ||
+ | -- Tabellenstruktur für Tabelle `solarRadiation` | ||
+ | -- | ||
+ | |||
+ | CREATE TABLE IF NOT EXISTS `solarRadiation` ( | ||
+ | `dateTime` int(11) NOT NULL, | ||
+ | `low` double default NULL, | ||
+ | `timeLow` int(11) default NULL, | ||
+ | `high` double default NULL, | ||
+ | `timeHigh` int(11) default NULL, | ||
+ | `whenHigh` double default NULL, | ||
+ | `cumulative` double default NULL, | ||
+ | `samples` int(11) default NULL, | ||
+ | PRIMARY KEY (`dateTime`) | ||
+ | ) ENGINE=MyISAM DEFAULT CHARSET=latin1; | ||
+ | |||
+ | -- -------------------------------------------------------- | ||
+ | |||
+ | -- | ||
+ | -- Tabellenstruktur für Tabelle `UV` | ||
+ | -- | ||
+ | |||
+ | CREATE TABLE IF NOT EXISTS `UV` ( | ||
+ | `dateTime` int(11) NOT NULL, | ||
+ | `low` double default NULL, | ||
+ | `timeLow` int(11) default NULL, | ||
+ | `high` double default NULL, | ||
+ | `timeHigh` int(11) default NULL, | ||
+ | `whenHigh` double default NULL, | ||
+ | `cumulative` double default NULL, | ||
+ | `samples` int(11) default NULL, | ||
+ | PRIMARY KEY (`dateTime`) | ||
+ | ) ENGINE=MyISAM DEFAULT CHARSET=latin1; | ||
+ | |||
+ | -- -------------------------------------------------------- | ||
+ | |||
+ | -- | ||
+ | -- Tabellenstruktur für Tabelle `windChill` | ||
+ | -- | ||
+ | |||
+ | CREATE TABLE IF NOT EXISTS `windChill` ( | ||
+ | `dateTime` int(11) NOT NULL, | ||
+ | `low` double default NULL, | ||
+ | `timeLow` int(11) default NULL, | ||
+ | `high` double default NULL, | ||
+ | `timeHigh` int(11) default NULL, | ||
+ | `whenHigh` double default NULL, | ||
+ | `cumulative` double default NULL, | ||
+ | `samples` int(11) default NULL, | ||
+ | PRIMARY KEY (`dateTime`) | ||
+ | ) ENGINE=MyISAM DEFAULT CHARSET=latin1; | ||
+ | |||
+ | -- -------------------------------------------------------- | ||
+ | |||
+ | -- | ||
+ | -- Tabellenstruktur für Tabelle `windDir` | ||
+ | -- | ||
+ | |||
+ | CREATE TABLE IF NOT EXISTS `windDir` ( | ||
+ | `dateTime` int(11) NOT NULL, | ||
+ | `bin0` int(11) default NULL, | ||
+ | `bin1` int(11) default NULL, | ||
+ | `bin2` int(11) default NULL, | ||
+ | `bin3` int(11) default NULL, | ||
+ | `bin4` int(11) default NULL, | ||
+ | `bin5` int(11) default NULL, | ||
+ | `bin6` int(11) default NULL, | ||
+ | `bin7` int(11) default NULL, | ||
+ | `bin8` int(11) default NULL, | ||
+ | `bin9` int(11) default NULL, | ||
+ | `bin10` int(11) default NULL, | ||
+ | `bin11` int(11) default NULL, | ||
+ | `bin12` int(11) default NULL, | ||
+ | `bin13` int(11) default NULL, | ||
+ | `bin14` int(11) default NULL, | ||
+ | `bin15` int(11) default NULL, | ||
+ | `bin16` int(11) default NULL, | ||
+ | `bin17` int(11) default NULL, | ||
+ | `bin18` int(11) default NULL, | ||
+ | `bin19` int(11) default NULL, | ||
+ | PRIMARY KEY (`dateTime`) | ||
+ | ) ENGINE=MyISAM DEFAULT CHARSET=latin1; | ||
+ | |||
+ | -- -------------------------------------------------------- | ||
+ | |||
+ | -- | ||
+ | -- Tabellenstruktur für Tabelle `windGust` | ||
+ | -- | ||
+ | |||
+ | CREATE TABLE IF NOT EXISTS `windGust` ( | ||
+ | `dateTime` int(11) NOT NULL, | ||
+ | `low` double default NULL, | ||
+ | `timeLow` int(11) default NULL, | ||
+ | `high` double default NULL, | ||
+ | `timeHigh` int(11) default NULL, | ||
+ | `whenHigh` double default NULL, | ||
+ | `cumulative` double default NULL, | ||
+ | `samples` int(11) default NULL, | ||
+ | PRIMARY KEY (`dateTime`) | ||
+ | ) ENGINE=MyISAM DEFAULT CHARSET=latin1; | ||
+ | |||
+ | -- -------------------------------------------------------- | ||
+ | |||
+ | -- | ||
+ | -- Tabellenstruktur für Tabelle `windSpeed` | ||
+ | -- | ||
+ | |||
+ | CREATE TABLE IF NOT EXISTS `windSpeed` ( | ||
+ | `dateTime` int(11) NOT NULL, | ||
+ | `low` double default NULL, | ||
+ | `timeLow` int(11) default NULL, | ||
+ | `high` double default NULL, | ||
+ | `timeHigh` int(11) default NULL, | ||
+ | `whenHigh` double default NULL, | ||
+ | `cumulative` double default NULL, | ||
+ | `samples` int(11) default NULL, | ||
+ | PRIMARY KEY (`dateTime`) | ||
+ | ) ENGINE=MyISAM DEFAULT CHARSET=latin1; | ||
+ | |||
+ | </ | ||
+ | |||
+ | /* | ||
+ | < | ||
+ | Query OK, 0 rows affected (0.04 sec) | ||
+ | |||
+ | MariaDB [(none)]> | ||
+ | Query OK, 0 rows affected (0.01 sec) | ||
+ | |||
+ | MariaDB [(none)]> | ||
+ | Query OK, 0 rows affected (0.03 sec) | ||
+ | |||
+ | MariaDB [(none)]> | ||
+ | Query OK, 0 rows affected (0.01 sec) | ||
+ | |||
+ | MariaDB [(none)]> | ||
+ | Query OK, 0 rows affected (0.05 sec) | ||
+ | |||
+ | MariaDB [(none)]> | ||
+ | Bye | ||
+ | </ | ||
+ | */ | ||
+ | |||
+ | ==== II) wview-mysql-create ==== | ||
+ | Hat man keine besonderen Ansprüche rund um den mySQL-Datenbankserver kann man auch auf das mitgelieferte Bash-Script **wview-mysql-create** zurückgreifen. Dieses Script finden wir im Verzeichnis // | ||
+ | <file bash># | ||
+ | ################################################################################ | ||
+ | # | ||
+ | # File: | ||
+ | # | ||
+ | # Description: | ||
+ | # | ||
+ | # Usage: | ||
+ | # | ||
+ | # | ||
+ | # privileges. | ||
+ | # | ||
+ | # | ||
+ | # privileges. | ||
+ | # | ||
+ | # | ||
+ | # | ||
+ | # History: | ||
+ | # Engineer | ||
+ | # MS Teel 03/ | ||
+ | # | ||
+ | ################################################################################ | ||
+ | |||
+ | show_usage() | ||
+ | { | ||
+ | echo " | ||
+ | echo " | ||
+ | echo "" | ||
+ | echo " | ||
+ | echo "" | ||
+ | echo " | ||
+ | echo "" | ||
+ | echo " | ||
+ | echo "" | ||
+ | echo " | ||
+ | echo "" | ||
+ | echo " | ||
+ | echo "" | ||
+ | echo " | ||
+ | echo "MUST: be executed on the MySQL server." | ||
+ | echo "" | ||
+ | } | ||
+ | |||
+ | ################################################################################ | ||
+ | ################################# | ||
+ | ################################################################################ | ||
+ | |||
+ | ## DO NOT CHANGE ANY DEFS IN THIS BLOCK! | ||
+ | |||
+ | export PATH=/ | ||
+ | |||
+ | ## The defaults match the SQLite table names: | ||
+ | SQL_ARCHIVE_TABLE=archive | ||
+ | SQL_HILOW_TABLE_INTEMP=inTemp | ||
+ | SQL_HILOW_TABLE_OUTTEMP=outTemp | ||
+ | SQL_HILOW_TABLE_INHUMIDITY=inHumidity | ||
+ | SQL_HILOW_TABLE_OUTHUMIDITY=outHumidity | ||
+ | SQL_HILOW_TABLE_BP=baromPressure | ||
+ | SQL_HILOW_TABLE_WINDSPEED=windSpeed | ||
+ | SQL_HILOW_TABLE_WINDGUST=windGust | ||
+ | SQL_HILOW_TABLE_DEWPOINT=dewPoint | ||
+ | SQL_HILOW_TABLE_RAIN=rain | ||
+ | SQL_HILOW_TABLE_RAINRATE=rainRate | ||
+ | SQL_HILOW_TABLE_WINDCHILL=windChill | ||
+ | SQL_HILOW_TABLE_HEATINDEX=heatIndex | ||
+ | SQL_HILOW_TABLE_ET=ET | ||
+ | SQL_HILOW_TABLE_UV=UV | ||
+ | SQL_HILOW_TABLE_SOLARRAD=solarRadiation | ||
+ | SQL_HILOW_TABLE_HAIL=hail | ||
+ | SQL_HILOW_TABLE_HAILRATE=hailRate | ||
+ | SQL_HILOW_TABLE_WINDDIR=windDir | ||
+ | SQL_NOAA_TABLE=noaaHistory | ||
+ | |||
+ | ## Test command line arguments: | ||
+ | if [ " | ||
+ | show_usage | ||
+ | exit 0 | ||
+ | fi | ||
+ | |||
+ | ## Check arguments: | ||
+ | if [ x" | ||
+ | echo "You must specify the MySQL admin username to create export database - use ' | ||
+ | show_usage | ||
+ | exit 1 | ||
+ | elif [ x" | ||
+ | echo "You must specify the MySQL admin password to create export database - use ' | ||
+ | show_usage | ||
+ | exit 1 | ||
+ | elif [ x" | ||
+ | echo "You must specify the MySQL username to create export database - use ' | ||
+ | show_usage | ||
+ | exit 1 | ||
+ | elif [ x" | ||
+ | echo "You must specify the MySQL password to create export database - use ' | ||
+ | show_usage | ||
+ | exit 1 | ||
+ | elif [ x" | ||
+ | echo "You must specify the MySQL database name to create export database - use ' | ||
+ | show_usage | ||
+ | exit 1 | ||
+ | else | ||
+ | MYSQL_ADMIN_USERNAME=$1 | ||
+ | MYSQL_ADMIN_PASSWORD=$2 | ||
+ | MYSQL_USERNAME=$3 | ||
+ | MYSQL_PASSWORD=$4 | ||
+ | MYSQL_DBNAME=$5 | ||
+ | fi | ||
+ | |||
+ | ################################################################################ | ||
+ | ####################### | ||
+ | ################################################################################ | ||
+ | syslog() | ||
+ | { | ||
+ | logger -t WV_EXPORT $1 $2 | ||
+ | } | ||
+ | |||
+ | syslog_error() | ||
+ | { | ||
+ | logger -t WV_EXPORT_ERROR $1 $2 | ||
+ | } | ||
+ | |||
+ | mysql_create() | ||
+ | { | ||
+ | echo " | ||
+ | echo "grant all privileges on $MYSQL_DBNAME.* to $MYSQL_USERNAME@\" | ||
+ | echo "grant all privileges on $MYSQL_DBNAME.* to $MYSQL_USERNAME@\" | ||
+ | echo "use $MYSQL_DBNAME;" | ||
+ | |||
+ | echo " | ||
+ | echo " | ||
+ | echo " | ||
+ | echo " | ||
+ | echo " | ||
+ | echo " | ||
+ | echo " | ||
+ | echo " | ||
+ | echo " | ||
+ | echo " | ||
+ | echo " | ||
+ | echo " | ||
+ | echo " | ||
+ | echo " | ||
+ | echo " | ||
+ | echo " | ||
+ | echo " rain REAL," >> / | ||
+ | echo " | ||
+ | echo " | ||
+ | echo " | ||
+ | echo " ET REAL," >> / | ||
+ | echo " | ||
+ | echo " UV REAL," >> / | ||
+ | echo " | ||
+ | echo " | ||
+ | echo " | ||
+ | echo " | ||
+ | echo " | ||
+ | echo " | ||
+ | echo " | ||
+ | echo " | ||
+ | echo " | ||
+ | echo " | ||
+ | echo " | ||
+ | echo " | ||
+ | echo " | ||
+ | echo " | ||
+ | echo " | ||
+ | echo " | ||
+ | echo " | ||
+ | echo " | ||
+ | echo " | ||
+ | echo " | ||
+ | echo " hail REAL," >> / | ||
+ | echo " | ||
+ | echo " | ||
+ | echo " | ||
+ | echo " | ||
+ | echo " | ||
+ | echo " | ||
+ | echo " | ||
+ | echo " | ||
+ | echo " | ||
+ | echo " | ||
+ | |||
+ | echo " | ||
+ | echo " | ||
+ | echo " low REAL," >> / | ||
+ | echo " | ||
+ | echo " high REAL," >> / | ||
+ | echo " | ||
+ | echo " | ||
+ | echo " | ||
+ | echo " | ||
+ | echo " | ||
+ | |||
+ | echo " | ||
+ | echo " | ||
+ | echo " low REAL," >> / | ||
+ | echo " | ||
+ | echo " high REAL," >> / | ||
+ | echo " | ||
+ | echo " | ||
+ | echo " | ||
+ | echo " | ||
+ | echo " | ||
+ | |||
+ | echo " | ||
+ | echo " | ||
+ | echo " low REAL," >> / | ||
+ | echo " | ||
+ | echo " high REAL," >> / | ||
+ | echo " | ||
+ | echo " | ||
+ | echo " | ||
+ | echo " | ||
+ | echo " | ||
+ | |||
+ | echo " | ||
+ | echo " | ||
+ | echo " low REAL," >> / | ||
+ | echo " | ||
+ | echo " high REAL," >> / | ||
+ | echo " | ||
+ | echo " | ||
+ | echo " | ||
+ | echo " | ||
+ | echo " | ||
+ | |||
+ | echo " | ||
+ | echo " | ||
+ | echo " low REAL," >> / | ||
+ | echo " | ||
+ | echo " high REAL," >> / | ||
+ | echo " | ||
+ | echo " | ||
+ | echo " | ||
+ | echo " | ||
+ | echo " | ||
+ | |||
+ | echo " | ||
+ | echo " | ||
+ | echo " low REAL," >> / | ||
+ | echo " | ||
+ | echo " high REAL," >> / | ||
+ | echo " | ||
+ | echo " | ||
+ | echo " | ||
+ | echo " | ||
+ | echo " | ||
+ | |||
+ | echo " | ||
+ | echo " | ||
+ | echo " low REAL," >> / | ||
+ | echo " | ||
+ | echo " high REAL," >> / | ||
+ | echo " | ||
+ | echo " | ||
+ | echo " | ||
+ | echo " | ||
+ | echo " | ||
+ | |||
+ | echo " | ||
+ | echo " | ||
+ | echo " low REAL," >> / | ||
+ | echo " | ||
+ | echo " high REAL," >> / | ||
+ | echo " | ||
+ | echo " | ||
+ | echo " | ||
+ | echo " | ||
+ | echo " | ||
+ | |||
+ | echo " | ||
+ | echo " | ||
+ | echo " low REAL," >> / | ||
+ | echo " | ||
+ | echo " high REAL," >> / | ||
+ | echo " | ||
+ | echo " | ||
+ | echo " | ||
+ | echo " | ||
+ | echo " | ||
+ | |||
+ | echo " | ||
+ | echo " | ||
+ | echo " low REAL," >> / | ||
+ | echo " | ||
+ | echo " high REAL," >> / | ||
+ | echo " | ||
+ | echo " | ||
+ | echo " | ||
+ | echo " | ||
+ | echo " | ||
+ | |||
+ | echo " | ||
+ | echo " | ||
+ | echo " low REAL," >> / | ||
+ | echo " | ||
+ | echo " high REAL," >> / | ||
+ | echo " | ||
+ | echo " | ||
+ | echo " | ||
+ | echo " | ||
+ | echo " | ||
+ | |||
+ | echo " | ||
+ | echo " | ||
+ | echo " low REAL," >> / | ||
+ | echo " | ||
+ | echo " high REAL," >> / | ||
+ | echo " | ||
+ | echo " | ||
+ | echo " | ||
+ | echo " | ||
+ | echo " | ||
+ | |||
+ | echo " | ||
+ | echo " | ||
+ | echo " low REAL," >> / | ||
+ | echo " | ||
+ | echo " high REAL," >> / | ||
+ | echo " | ||
+ | echo " | ||
+ | echo " | ||
+ | echo " | ||
+ | echo " | ||
+ | |||
+ | echo " | ||
+ | echo " | ||
+ | echo " low REAL," >> / | ||
+ | echo " | ||
+ | echo " high REAL," >> / | ||
+ | echo " | ||
+ | echo " | ||
+ | echo " | ||
+ | echo " | ||
+ | echo " | ||
+ | |||
+ | echo " | ||
+ | echo " | ||
+ | echo " low REAL," >> / | ||
+ | echo " | ||
+ | echo " high REAL," >> / | ||
+ | echo " | ||
+ | echo " | ||
+ | echo " | ||
+ | echo " | ||
+ | echo " | ||
+ | |||
+ | echo " | ||
+ | echo " | ||
+ | echo " low REAL," >> / | ||
+ | echo " | ||
+ | echo " high REAL," >> / | ||
+ | echo " | ||
+ | echo " | ||
+ | echo " | ||
+ | echo " | ||
+ | echo " | ||
+ | |||
+ | echo " | ||
+ | echo " | ||
+ | echo " low REAL," >> / | ||
+ | echo " | ||
+ | echo " high REAL," >> / | ||
+ | echo " | ||
+ | echo " | ||
+ | echo " | ||
+ | echo " | ||
+ | echo " | ||
+ | |||
+ | echo " | ||
+ | echo " | ||
+ | echo " bin0 INTEGER," | ||
+ | echo " bin1 INTEGER," | ||
+ | echo " bin2 INTEGER," | ||
+ | echo " bin3 INTEGER," | ||
+ | echo " bin4 INTEGER," | ||
+ | echo " bin5 INTEGER," | ||
+ | echo " bin6 INTEGER," | ||
+ | echo " bin7 INTEGER," | ||
+ | echo " bin8 INTEGER," | ||
+ | echo " bin9 INTEGER," | ||
+ | echo " | ||
+ | echo " | ||
+ | echo " | ||
+ | echo " | ||
+ | echo " | ||
+ | echo " | ||
+ | echo " | ||
+ | echo " | ||
+ | echo " | ||
+ | echo " | ||
+ | echo " | ||
+ | |||
+ | echo " | ||
+ | echo " | ||
+ | echo " | ||
+ | echo " | ||
+ | echo " | ||
+ | echo " | ||
+ | echo " | ||
+ | echo " | ||
+ | echo " | ||
+ | echo " rain REAL," >> / | ||
+ | echo " | ||
+ | echo " | ||
+ | echo " | ||
+ | echo " | ||
+ | echo " | ||
+ | |||
+ | mysql --user=$MYSQL_ADMIN_USERNAME --password=$MYSQL_ADMIN_PASSWORD < / | ||
+ | rm -rf / | ||
+ | } | ||
+ | |||
+ | ################################################################################ | ||
+ | ################## | ||
+ | ################################################################################ | ||
+ | |||
+ | mysql_create | ||
+ | |||
+ | ## Done! | ||
+ | exit 0 | ||
+ | |||
+ | </ | ||
+ | Rufen wir das script ohne Optionen auf, wird eine kurze Hilfe ausgegeben | ||
+ | # / | ||
+ | |||
+ | < | ||
+ | USAGE: | ||
+ | wview-mysql-create < | ||
+ | |||
+ | db_admin | ||
+ | |||
+ | db_admin_passwd | ||
+ | |||
+ | db_user | ||
+ | |||
+ | db_passwd | ||
+ | |||
+ | db_name | ||
+ | |||
+ | REQUIRES: mysql CLI utility for database creation. | ||
+ | MUST: be executed on the MySQL server. | ||
+ | </ | ||
+ | Zum Anlegen der Tabellen und des Datenbanknutzers rufen wir das Programm **wview-mysql-create** wie folgt auf: | ||
+ | # / | ||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | ==== Datenbank Verbindung testen ==== | ||
+ | Anschliessend testen wir, ob wir mit den genannten Daten auch eine Verbindung zur Datenbank bekommen. | ||
+ | # mysql -D wviewDB -u wview-user -h 10.0.0.37 -p | ||
+ | |||
+ | Enter password: | ||
+ | < | ||
+ | You can turn off this feature to get a quicker startup with -A | ||
+ | |||
+ | Welcome to the MariaDB monitor. | ||
+ | Your MariaDB connection id is 63806 | ||
+ | Server version: 5.5.52-MariaDB MariaDB Server | ||
+ | |||
+ | Copyright (c) 2000, 2016, Oracle, MariaDB Corporation Ab and others. | ||
+ | |||
+ | Type ' | ||
+ | |||
+ | MariaDB [wviewDB]> | ||
+ | +-------------------+ | ||
+ | | Tables_in_wviewDB | | ||
+ | +-------------------+ | ||
+ | | ET | | ||
+ | | UV | | ||
+ | | archive | ||
+ | | baromPressure | ||
+ | | dewPoint | ||
+ | | hail | | ||
+ | | hailRate | ||
+ | | heatIndex | ||
+ | | inHumidity | ||
+ | | inTemp | ||
+ | | noaaHistory | ||
+ | | outHumidity | ||
+ | | outTemp | ||
+ | | rain | | ||
+ | | rainRate | ||
+ | | solarRadiation | ||
+ | | windChill | ||
+ | | windDir | ||
+ | | windGust | ||
+ | | windSpeed | ||
+ | +-------------------+ | ||
+ | 20 rows in set (0.00 sec) | ||
+ | |||
+ | MariaDB [wviewDB]> | ||
+ | Bye | ||
+ | </ | ||
+ | |||
+ | === manuell Daten in die MySQL-Tabelle(n) einfügen === | ||
+ | Bevor wir regelmäßig die Datenbank befüllen, testen wir dies, ob auch von der Konsole aus, der Datenbank-Export richtig funktioniert. Wir rufen also **wview-mysql-export** mit der Option **debug** auf. | ||
+ | # wview-mysql-export debug | ||
+ | Im //syslog// wird uns der probelauf entsprechend positiv quittiert: | ||
+ | < | ||
+ | Aug 3 18:33:39 vml000020 WV_EXPORT: Exporting to: / | ||
+ | Aug 3 18:33:39 vml000020 WV_EXPORT: Exporting HILOW tables: | ||
+ | Aug 3 18:33:39 vml000020 WV_EXPORT: Exporting with: vml000030.dmz.nausch.org: | ||
+ | Aug 3 18:33:39 vml000020 WV_EXPORT: Importing: / | ||
+ | Aug 3 18:33:39 vml000020 WV_EXPORT: Importing HILOW tables: | ||
+ | </ | ||
+ | === automatische Datenbankexport === | ||
+ | Für den fortlaufenden Ex-/Import in die MySQL-Datenbank legen wir uns nun einen cronjob an, der uns alle 5 Minuten die Datensätze aus der sqlite-Datei/ | ||
+ | < | ||
+ | |||
+ | # wview Datenbankexport nach mysql aus der sqlite | ||
+ | # eingefügt durch Django am 08.06.2009 | ||
+ | 1, | ||
+ | |||
+ | |||
+ | ==== MySQL-Datenbank-Import aus alten wview-Installationen ==== | ||
+ | === wlk2sqlite === | ||
+ | Möchte man bereits bestehende Archivdaten im alten **.WLK** Format mit in eine neue Installation mit übernehmen, | ||
+ | |||
+ | Der Aufruf erfolgt dabei wie gewohnt **befehl** **quelle** **ziel**: | ||
+ | # wlk2sqlite / | ||
+ | < | ||
+ | Conversion Stats: | ||
+ | Time : 1:0 minutes | ||
+ | Recs/ | ||
+ | Inserts | ||
+ | Duplicates: 0 | ||
+ | Errors | ||
+ | Conversion Stats: | ||
+ | Time : 2:0 minutes | ||
+ | Recs/ | ||
+ | Inserts | ||
+ | Duplicates: 0 | ||
+ | Errors | ||
+ | Conversion Stats: | ||
+ | Time : 2:59 | ||
+ | Recs/ | ||
+ | Inserts | ||
+ | Duplicates: 2555 | ||
+ | Errors | ||
+ | === hilowcreat === | ||
+ | Anschließend erstellen wir noch die **HI/ | ||
+ | # hilowcreate / | ||
+ | |||
+ | < | ||
+ | / | ||
+ | Now copy / | ||
+ | </ | ||
+ | |||
+ | Zum Schluß starten wir wview neu: | ||
+ | # service wview start | ||
+ | ===== Erweiterungen und Ergänzungen ===== | ||
+ | ==== AWEKAS ==== | ||
+ | |||
+ | {{ws: | ||
+ | |||
+ | AWEKAS ist eine Abkürzung für " | ||
+ | Die Werte werden auf den jeweiligen Webseiten der Teilnehmer als Datei zur Verfügung gestellt und vom AWEKAS Server abgeholt. | ||
+ | |||
+ | **wview** liefert uns mittlerweile ein passendes Template-File mit. Wir kopieren dies in unseren Template-Pfad. | ||
+ | # cp / | ||
+ | In der ** html-templates.conf** aktivieren wir nun die entsprechende vorgefertigte Konfigurationszeiel für die Bereitstellung unserer AWEKAS-wetterdaten. | ||
+ | < | ||
+ | |||
+ | ############################################################################### | ||
+ | ### AWEKAS Data Submission Template | ||
+ | ############################################################################### | ||
+ | |||
+ | awekas_wl.htx</ | ||
+ | Anschließend starten wir **wview** einmal durch. | ||
+ | # service wview stop | ||
+ | # service wview start | ||
+ | Aus der Muster-Vorlage | ||
+ | < | ||
+ | < | ||
+ | < | ||
+ | < | ||
+ | < | ||
+ | < | ||
+ | < | ||
+ | < | ||
+ | < | ||
+ | < | ||
+ | -<br> | ||
+ | -<br> | ||
+ | -<br> | ||
+ | -<br> | ||
+ | -<br> | ||
+ | -<br> | ||
+ | -<br> | ||
+ | < | ||
+ | < | ||
+ | < | ||
+ | < | ||
+ | < | ||
+ | < | ||
+ | < | ||
+ | < | ||
+ | < | ||
+ | < | ||
+ | w/ | ||
+ | < | ||
+ | index< | ||
+ | Template_V1.5< | ||
+ | wir so das von [[https:// | ||
+ | < | ||
+ | 15.4 | ||
+ | 77 | ||
+ | 1008.5 | ||
+ | 0.6 | ||
+ | 1.6 | ||
+ | 72 | ||
+ | 21:49:10 | ||
+ | 20090608 | ||
+ | + | ||
+ | - | ||
+ | - | ||
+ | - | ||
+ | - | ||
+ | - | ||
+ | - | ||
+ | - | ||
+ | 5 | ||
+ | 0 | ||
+ | 0.0 | ||
+ | 0.00 | ||
+ | |||
+ | C | ||
+ | % | ||
+ | km/h | ||
+ | mb | ||
+ | mm | ||
+ | w/m^2 | ||
+ | mm/h | ||
+ | index | ||
+ | Template_V1.5</ | ||
+ | |||
+ | ---- | ||
+ | |||
+ | ==== CWOP ==== | ||
+ | |||
+ | {{: | ||
+ | |||
+ | Das **C**itizen **W**eather **O**bserver **P**rogram [[https:// | ||
+ | - Erfassen von Wetterdaten privater Wetterstationen | ||
+ | - Bereitstellen der Wetterdaten für weitere Wetterservices | ||
+ | - Überprüfen der gesammelten Wetterdaten auf Plausibilität, | ||
+ | |||
+ | Die Wetterdaten werden im Gegensatz von **// | ||
+ | === CWOP-Anmledung === | ||
+ | Sofern wir noch keinen Account haben, legen wir uns einen neuen an. Hierzu gehen wir mit unserem Browser der Wahl zur [[https:// | ||
+ | Beispiel: | ||
+ | |||
+ | {{ : | ||
+ | |||
+ | Nach Anwahl der Schaltfläche **Send my CW Number!** erhalten wir dann die erste Bestätigung. | ||
+ | |||
+ | {{ : | ||
+ | |||
+ | Diese Nummer benötigen wir für die weitere Konfiguration von **wview**. Die Konfiguration von wview nemen wir am einfachsten über die WEB-GUI [[https:// | ||
+ | |||
+ | {{ : | ||
+ | |||
+ | Im Feld **CWOP Call Sign** tragen wir nun die zuvor erhaltene Account-Nummer ein. Bei **Location** geben wir die geographischen Daten unserer Station an. | ||
+ | Bei // | ||
+ | * DD = Grad | ||
+ | * MM = Minuten | ||
+ | * hh = Hundertstel Minuten (Nachkommastellen) | ||
+ | * d = Angabe **N**ord oder **S** | ||
+ | Ensprechend gilt bei // | ||
+ | * DDD = Grad | ||
+ | * MM = Minuten | ||
+ | * hh = Hundertstel Minuten (Nachkommastellen) | ||
+ | * d = Angabe **E**ast (Ost) oder **W**est | ||
+ | Für die Station **DW2996** ergeben sich bei **Nord 48,19870** = **48° 11, | ||
+ | |||
+ | Nach dem Sicher der daten, starten wir **wview** einmal neu. | ||
+ | # service wview stop && service wview start | ||
+ | Im Syslog wird der erfolgreiche Start entsprechend dokumentiert. | ||
+ | < | ||
+ | Jun 9 13:02:22 nss wvcwopd[8074]: | ||
+ | Jun 9 13:02:22 nss wvcwopd[8074]: | ||
+ | Jun 9 13:02:22 nss wvcwopd[8074]: | ||
+ | Sobald die ersten Daten übertragen werden, erfolgt auch hier ein Eintrag im zentralen **syslog**: | ||
+ | < | ||
+ | Jun 9 13:16:24 nss wvcwopd[8074]: | ||
+ | Jun 9 13:26:25 nss wvcwopd[8074]: | ||
+ | Jun 9 13:36:24 nss wvcwopd[8074]: | ||
+ | Jun 9 13:46:25 nss wvcwopd[8074]: | ||
+ | Jun 9 13:56:25 nss wvcwopd[8074]: | ||
+ | Im nächsten Schritt überprüfen wir, ob die Station richtig erkant wird und ob die Ortsangaben passten. Hierzu nutzen wir, die in der Status-eMAil benannte Zieladresse **findu.com/ | ||
+ | Sowohl die erkannten Daten und auch die Ortsangabe wird in der Karte angezeigt. | ||
+ | |||
+ | {{ : | ||
+ | |||
+ | Sofern die Daten stimmen, senden wir, wie in der Status-eMail benannt, eine Nachricht an den **CWOP Maintainer**. | ||
+ | |||
+ | ==== Anpassung für die metrische Regenmengenerfassung ==== | ||
+ | Von Haus aus, wird die ISS der Vantage Pro 2 als "nicht metrische" | ||
+ | === Einbau des metrischen Adapters in die ISS === | ||
+ | Die integrierte Sensoreinheit enthält einen metrischen Adapter, mit Hilfe dessen das Gewicht des Mechanismus des Kippbehälters so einstellt wird, dass dieser 0,2 mm Niederschlag pro Leeren des Kippbehälters misst. Der Einbau erfolgt gemäß den Angaben auf Seite 31 der [[https:// | ||
+ | === Kalibrierung des Kippmechanismusses der ISS === | ||
+ | Für die Kalibrierung des Regenmessers verwenden wir am besten eine Messpipette oder eine 10ml Kunsstoffspritze aus der Apotheke. Nach dem Einbau des metrischen Adapters müssen wir nun dafür sorgen, dass exakt ein Wippenschlag erfolgt, sobald 0,2 mm Regen erfasst wurden. | ||
+ | Das Wichtigste dabei ist, die waagerechte Ausrichtung der ISS, mit einer schief montierten ISS wird auch die spätere Kalibrierung __fehlschlagen!__. Ebenso sollte die Kalibrierung nur bei absoluter Windstille erfolgen, da sonst die Wippe unkontrolliert umschlagen wird! | ||
+ | |||
+ | Nachdem wir die ISS möglichst genau " | ||
+ | |||
+ | Für die Bestimmung der Wassermenge, | ||
+ | |||
+ | Das Wasservolumen, | ||
+ | === Einstellung Vantage Pro2 Konsole === | ||
+ | Für die Korrekte Anzeige der erfassten Regenmenge (Wippenschläge) muss nun noch die Messwertanzeige konfiguriert werden. Die Einstellung erfolgt, wie in der [[https:// | ||
+ | === Einstellungn bei wviewmgmt === | ||
+ | Im Gegensatz zu früheren Version bedarf es keines Pachen mehr an den wview-Sourcen! Unter dem Reiter //**File Generation**// | ||
+ | |||
+ | {{ : | ||
+ | |||
+ | ==== Anpassungen für deutsche Meldungen ==== | ||
+ | Alternative zu der nachfolgend beschriebenen manuellen Patchung der beiden **wview-Dateien**: | ||
+ | * / | ||
+ | * / | ||
+ | können wir uns folgenden [[https:// | ||
+ | |||
+ | Wir wechseln hierzu in unser Programmverzeichnis: | ||
+ | # cd / | ||
+ | Als nächstes holen wir uns den Patch((erstellt via:\\ diff -NaurwB wview-5.20.2/ | ||
+ | # wget https:// | ||
+ | |||
+ | Zum Schluß wenden wir diesen an: | ||
+ | # patch -p1 < wview-5.20.2.de_patch | ||
+ | |||
+ | patching file common/ | ||
+ | patching file htmlgenerator/ | ||
+ | bzw. für die aktuelle Version: | ||
+ | # patch -p1 < wview-5.20.2.de_patch | ||
+ | |||
+ | patching file common/ | ||
+ | patching file htmlgenerator/ | ||
+ | |||
+ | Anschließend stoppen wir kurz wview, sofern es bereits gestartet wurde und läuft. | ||
+ | # service wview stop | ||
+ | Dann stoßen wir die Übersetzung des Quellcodes neu an und installieren die neu erstellte Version: | ||
+ | # make clean && make && make install | ||
+ | Zum Schluß wird wview neu gestartet. | ||
+ | # service wview start | ||
+ | |||
+ | === deutsche Beaufort-Meldungen === | ||
+ | Für die Ausgabe der deutschen Beaufortmeldungen ändern/ | ||
+ | |||
+ | Folgende Änderungen an der **// | ||
+ | < | ||
+ | |||
+ | char *wvutilsConvertToBeaufortScale (int windSpeed) | ||
+ | { | ||
+ | static char | ||
+ | |||
+ | if (windSpeed == Beaufort_Calm) | ||
+ | { | ||
+ | // sprintf (beaufortBfr, | ||
+ | sprintf (beaufortBfr, | ||
+ | } | ||
+ | else if (windSpeed <= Beaufort_LightAir) | ||
+ | { | ||
+ | // sprintf (beaufortBfr, | ||
+ | sprintf (beaufortBfr, | ||
+ | } | ||
+ | else if (windSpeed <= Beaufort_LightBreeze) | ||
+ | { | ||
+ | // sprintf (beaufortBfr, | ||
+ | sprintf (beaufortBfr, | ||
+ | } | ||
+ | else if (windSpeed <= Beaufort_GentleBreeze) | ||
+ | { | ||
+ | // sprintf (beaufortBfr, | ||
+ | sprintf (beaufortBfr, | ||
+ | } | ||
+ | else if (windSpeed <= Beaufort_ModerateBreeze) | ||
+ | { | ||
+ | // sprintf (beaufortBfr, | ||
+ | sprintf (beaufortBfr, | ||
+ | } | ||
+ | else if (windSpeed <= Beaufort_FreshBreeze) | ||
+ | { | ||
+ | // sprintf (beaufortBfr, | ||
+ | sprintf (beaufortBfr, | ||
+ | } | ||
+ | else if (windSpeed <= Beaufort_StrongBreeze) | ||
+ | { | ||
+ | // sprintf (beaufortBfr, | ||
+ | sprintf (beaufortBfr, | ||
+ | } | ||
+ | else if (windSpeed <= Beaufort_NearGale) | ||
+ | { | ||
+ | // sprintf (beaufortBfr, | ||
+ | sprintf (beaufortBfr, | ||
+ | } | ||
+ | else if (windSpeed <= Beaufort_Gale) | ||
+ | { | ||
+ | // sprintf (beaufortBfr, | ||
+ | sprintf (beaufortBfr, | ||
+ | } | ||
+ | else if (windSpeed <= Beaufort_SevereGale) | ||
+ | { | ||
+ | // sprintf (beaufortBfr, | ||
+ | sprintf (beaufortBfr, | ||
+ | } | ||
+ | else if (windSpeed <= Beaufort_Storm) | ||
+ | { | ||
+ | // sprintf (beaufortBfr, | ||
+ | sprintf (beaufortBfr, | ||
+ | } | ||
+ | else if (windSpeed <= Beaufort_ViolentStorm) | ||
+ | { | ||
+ | // sprintf (beaufortBfr, | ||
+ | sprintf (beaufortBfr, | ||
+ | } | ||
+ | else // if (windSpeed <= Beaufort_Hurricane) | ||
+ | { | ||
+ | // sprintf (beaufortBfr, | ||
+ | sprintf (beaufortBfr, | ||
+ | } | ||
+ | |||
+ | return beaufortBfr; | ||
+ | }</ | ||
+ | Anschließend stoppen wir kurz **wview**, sofern es bereits gestartet wurde und läuft. | ||
+ | # service wview stop | ||
+ | Dann stoßen wir die Übersetzung des Quellcodes neu an und installieren die neu erstellte Version: | ||
+ | # make clean && make && make install | ||
+ | Zum Schluß wird **wview** neu gestartet. | ||
+ | # service wview start | ||
+ | === deutsche Himmelsrichtungen === | ||
+ | Die Himmelsrichtungen, | ||
+ | |||
+ | Mit nachfolgendem Patch werden die Himmelsrichtungen dann unseren Ansprüchen nach korrigiert. Wir bearbeiten dieses mal die Datei **htmlGenerate.c** im Verzeichnis **/ | ||
+ | # vim / | ||
+ | < | ||
+ | { | ||
+ | " | ||
+ | // " | ||
+ | " | ||
+ | // " | ||
+ | " | ||
+ | // " | ||
+ | " | ||
+ | // " | ||
+ | " | ||
+ | // " | ||
+ | " | ||
+ | // " | ||
+ | " | ||
+ | // " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | }; | ||
+ | </ | ||
+ | Diese nachfolgenden drei Schritte können wir uns aber eventuell auch sparen, wenn die nachfolgende Änderung zu den // | ||
+ | # service wview stop | ||
+ | Dann stoßen wir die Übersetzung des Quellcodes neu an und installieren die neu erstellte Version: | ||
+ | # make clean && make && make install | ||
+ | Zum Schluß wird **wview** neu gestartet. | ||
+ | # service wview start | ||
+ | |||
+ | === Anpassung für europäische Maßeinheiten === | ||
+ | Damit für unsere Breitenangaben der Luftdruck in **hPa** und die Temperatur in **°C** angezeigt wird, müssen wir noch ein paar Änderungen am Quellcode vornehmen. | ||
+ | |||
+ | Wie schon zuvor bei den //deutsche Himmelsrichtungen// | ||
+ | # vim / | ||
+ | < | ||
+ | // now " | ||
+ | switch (tagIndex) | ||
+ | { | ||
+ | case 0: | ||
+ | if (id-> | ||
+ | // strcpy (store, " C"); | ||
+ | strcpy (store, " °C"); | ||
+ | else | ||
+ | // strcpy (store, " F"); | ||
+ | strcpy (store, " °F"); | ||
+ | break; | ||
+ | case 1: | ||
+ | strcpy (store, " %"); | ||
+ | break; | ||
+ | case 2: | ||
+ | if (id-> | ||
+ | strcpy (store, " km/ | ||
+ | else | ||
+ | strcpy (store, " mph"); | ||
+ | break; | ||
+ | case 3: | ||
+ | if (id-> | ||
+ | // strcpy (store, " mb"); | ||
+ | strcpy (store, " hPa"); | ||
+ | else | ||
+ | strcpy (store, " in"); | ||
+ | break;</ | ||
+ | Anschließend stoppen wir kurz **wview**, sofern es bereits gestartet wurde und läuft. | ||
+ | # service wview stop | ||
+ | Dann stoßen wir die Übersetzung des Quellcodes neu an und installieren die neu erstellte Version: | ||
+ | # make clean && make && make install | ||
+ | Zum Schluß wird **wview** neu gestartet. | ||
+ | # service wview start | ||
+ | |||
+ | === Graphiken mit Einheitenbezeichnung = °C === | ||
+ | Damit unsere erstellten Graphiken bei der Angabe der Temperaturwerte mit der bei uns übliche Bezeichnung **//°C//** (siehe [[https:// | ||
+ | |||
+ | Zuvor sicher wir noch die originale Datei **images.conf**, | ||
+ | # cp / | ||
+ | |||
+ | # vim / | ||
+ | |||
+ | <file bash / | ||
+ | # images-metric.conf - configure what images wview will generate | ||
+ | # | ||
+ | |||
+ | # File Format | ||
+ | # | ||
+ | # -> lines beginning with '#' | ||
+ | # -> columns are whitespace delimited | ||
+ | # | ||
+ | |||
+ | # Column Format | ||
+ | # | ||
+ | # 1) image filename | ||
+ | # 2) image label (can be translated as desired) | ||
+ | # 3) image unit label (can be translated as desired) | ||
+ | # 4) decimal places | ||
+ | # 5) image generator function index (see images.c) | ||
+ | # | ||
+ | |||
+ | # Enabling/ | ||
+ | # | ||
+ | # -> To enable the generation of an image, uncomment it (remove any '#' | ||
+ | | ||
+ | # -> To disable the generation of an image, comment it out by placing one or | ||
+ | more '#' | ||
+ | |||
+ | |||
+ | ################# | ||
+ | |||
+ | # Filename | ||
+ | # | ||
+ | tempdial.png | ||
+ | humiddial.png | ||
+ | wind.png | ||
+ | |||
+ | |||
+ | ################# | ||
+ | |||
+ | # Filename | ||
+ | # | ||
+ | temp.png | ||
+ | humid.png | ||
+ | dew.png | ||
+ | wchill.png | ||
+ | hindex.png | ||
+ | barom.png | ||
+ | dayrain.png | ||
+ | stormrain.png | ||
+ | rainrate.png | ||
+ | monthrain.png | ||
+ | yearrain.png | ||
+ | |||
+ | |||
+ | ################# | ||
+ | |||
+ | # Filename | ||
+ | # | ||
+ | #### DAY VALUES #### | ||
+ | tempdaycomp.png | ||
+ | heatchillcomp.png | ||
+ | intempdaycomp.png | ||
+ | humidday.png | ||
+ | wspeeddaycomp.png | ||
+ | wspeedday.png | ||
+ | wdirday.png | ||
+ | hiwspeedday.png | ||
+ | baromday.png | ||
+ | |||
+ | tempday.png | ||
+ | dewday.png | ||
+ | wchillday.png | ||
+ | hindexday.png | ||
+ | |||
+ | #### WEEK VALUES #### | ||
+ | tempweekcomp.png | ||
+ | heatchillweekcomp.png | ||
+ | intempweekcomp.png | ||
+ | humidweek.png | ||
+ | wspeedweekcomp.png | ||
+ | wspeedweek.png | ||
+ | wdirweek.png | ||
+ | hiwspeedweek.png | ||
+ | baromweek.png | ||
+ | |||
+ | tempweek.png | ||
+ | dewweek.png | ||
+ | wchillweek.png | ||
+ | hindexweek.png | ||
+ | |||
+ | #### MONTH VALUES #### | ||
+ | tempmonthcomp.png | ||
+ | heatchillmonthcomp.png | ||
+ | intempmonthcomp.png | ||
+ | humidmonth.png | ||
+ | wspeedmonthcomp.png | ||
+ | wspeedmonth.png | ||
+ | wdirmonth.png | ||
+ | hiwspeedmonth.png | ||
+ | barommonth.png | ||
+ | |||
+ | tempmonth.png | ||
+ | dewmonth.png | ||
+ | wchillmonth.png | ||
+ | hindexmonth.png | ||
+ | |||
+ | #### YEAR VALUES #### | ||
+ | tempyear.png | ||
+ | humidyear.png | ||
+ | dewyear.png | ||
+ | wspeedyear.png | ||
+ | wdiryear.png | ||
+ | hiwspeedyear.png | ||
+ | baromyear.png | ||
+ | wchillyear.png | ||
+ | hindexyear.png | ||
+ | |||
+ | |||
+ | ################# | ||
+ | |||
+ | # Filename | ||
+ | # | ||
+ | rainday.png | ||
+ | rainweek.png | ||
+ | rainmonth.png | ||
+ | rainyear.png | ||
+ | |||
+ | |||
+ | ################# | ||
+ | |||
+ | # Filename | ||
+ | # | ||
+ | windroseday.png | ||
+ | windroseweek.png | ||
+ | windrosemonth.png | ||
+ | windroseyear.png | ||
+ | |||
+ | |||
+ | ################# | ||
+ | |||
+ | # Filename | ||
+ | # | ||
+ | UV.png | ||
+ | radiation.png | ||
+ | ET.png | ||
+ | |||
+ | |||
+ | ################# | ||
+ | |||
+ | # Filename | ||
+ | # | ||
+ | radiationDay.png | ||
+ | radiationWeek.png | ||
+ | radiationMonth.png | ||
+ | radiationYear.png | ||
+ | UVDay.png | ||
+ | UVWeek.png | ||
+ | UVMonth.png | ||
+ | UVYear.png | ||
+ | ETDay.png | ||
+ | ETWeek.png | ||
+ | ETMonth.png | ||
+ | ETYear.png | ||
+ | leafTemp1Day.png | ||
+ | leafTemp1Month.png | ||
+ | ## leafTemp1Year.png | ||
+ | ## leafTemp2Day.png | ||
+ | ## leafTemp2Month.png | ||
+ | ## leafTemp2Year.png | ||
+ | ## leafWetness1Day.png | ||
+ | ## leafWetness1Month.png | ||
+ | ## leafWetness1Year.png | ||
+ | ## leafWetness2Day.png | ||
+ | ## leafWetness2Month.png | ||
+ | ## leafWetness2Year.png | ||
+ | ## soilTemp1Day.png | ||
+ | ## soilTemp1Month.png | ||
+ | ## soilTemp1Year.png | ||
+ | ## soilTemp2Day.png | ||
+ | ## soilTemp2Month.png | ||
+ | ## soilTemp2Year.png | ||
+ | ## soilTemp3Day.png | ||
+ | ## soilTemp3Month.png | ||
+ | ## soilTemp3Year.png | ||
+ | ## soilTemp4Day.png | ||
+ | ## soilTemp4Month.png | ||
+ | ## soilTemp4Year.png | ||
+ | ## extraHumid1Day.png | ||
+ | ## extraHumid1Month.png | ||
+ | ## extraHumid1Year.png | ||
+ | ## extraHumid2Day.png | ||
+ | ## extraHumid2Month.png | ||
+ | ## extraHumid2Year.png | ||
+ | ## extraTemp1Day.png | ||
+ | ## extraTemp1Month.png | ||
+ | ## extraTemp1Year.png | ||
+ | ## extraTemp2Day.png | ||
+ | ## extraTemp2Month.png | ||
+ | ## extraTemp2Year.png | ||
+ | ## extraTemp3Day.png | ||
+ | ## extraTemp3Month.png | ||
+ | ## extraTemp3Year.png | ||
+ | ## soilMoist1Day.png | ||
+ | ## soilMoist1Month.png | ||
+ | ## soilMoist1Year.png | ||
+ | ## soilMoist2Day.png | ||
+ | ## soilMoist2Month.png | ||
+ | ## soilMoist2Year.png | ||
+ | ## soilMoist3Day.png | ||
+ | ## soilMoist3Month.png | ||
+ | ## soilMoist3Year.png | ||
+ | ## soilMoist4Day.png | ||
+ | ## soilMoist4Month.png | ||
+ | ## soilMoist4Year.png | ||
+ | |||
+ | |||
+ | ################# | ||
+ | |||
+ | # Filename | ||
+ | # | ||
+ | netRainDay.png | ||
+ | netRainMonth.png | ||
+ | netRainYear.png | ||
+ | |||
+ | |||
+ | ################# | ||
+ | |||
+ | # Filename | ||
+ | # | ||
+ | rxcheck.png | ||
+ | |||
+ | </ | ||
+ | |||
+ | Anschließend konvertieren wir die bearbeitete **images.conf**, | ||
+ | # iconv -f UTF-8 -t ISO-8859-1 images.conf > images.conf.neu-ISO-8859-1 | ||
+ | |||
+ | Anschließend löschen wir die **images.conf** und setzen einen symbolischen link auf die neu erstellte Datei, damit **htmlgend** die Vorlagedatei finden kann. | ||
+ | # rm -f / | ||
+ | |||
+ | # ln -s / | ||
+ | |||
+ | Zum Schluß starten wir **wview** einmal neu und erfreuen uns der neuen Graphiken. | ||
+ | # service wview start | ||
+ | |||
+ | Bei Bedarf //pimpen// wir noch abschließend die Bildschirmausgaben noch ein wenig - wie das geht, steht im letzten Kapitel [[wetter: | ||
+ | |||
+ | === deutsche Wettervorhersagemeldungen === | ||
+ | Für die Wettervorhersagen mit deutschen Meldungen nutzen wir die Übersetzung von Tobias Ferrari, die in der Konfigurationsdatei | ||
+ | |||
+ | ====== Links ====== | ||
+ | * **[[wetter: | ||
+ | * **[[wetter: | ||
+ | * **[[wiki: | ||
+ | * **[[https:// | ||
+ | |||