自宅周りの気温湿度は、15分位毎に勝手に気温と湿度のデータをサーバに送りつけるようになっていますので、サーバから取り出せば必要な分析ができます。
データの受け渡しはWIFIでwebサーバに送り、php8でpostgreSQL(v 15.2)のDataBaseに送り、蓄積しておき、必要な時に必要なデータを取り出してweb上で表示するようにしています。
本来は、庭の花の開花時期などの予測に使う方法の実験の為に考えたものですが、日長、日照時間等いろいろの要素を考えなければならないし、そもそも、どの時点からの日照時間(日照量)で予測するのか、等考えなければならないことは多いので、表示方法については放置状態で、気温と湿度のデータは溜まるばかり。
ま、なんか役に立つような表示位は作っておこうと、以前にCanvas.jsで作成したものに、今回は、過去のデータとの比較が簡単に出来るような表示を加えてみました。 最下部にある平均気温、最高最低気温のLegendをクリックすることにより、表示のon/offが出来るので、ココでは、過去5年間の任意の年【2~5年)の間の比較が出来き、中々素晴らしいです。 Canvas.jsの機能には驚かされます。
> PHPで書いたアプリがtypo等でウンスンになることがありますが、debuggerがあるわけでは無いので、何時もあてずっぽうに、いくつかに分割して切り出して動かしてはバグを探っていてストレスでしたが、serverのhttpd-errorにアクセスできれば、下の様にバグを特定出来そうな情報が得られることに気が付きました。 これで、phpのアプリも、あまりストレスなく作成できそうです。 (今まで10年以上気が付かなかった! 情けない。)
ken@tyd3:~ % tail -f /var/log/httpd-error.log
: : :
[Tue Jul 18 09:57:15.513217 2023] [php:error] [pid 1256] [client 192.168.1.??:56089] PHP Parse error: syntax error, unexpected identifier "Min", expecting "," or ";" in /usr/local/www/data/xxx.php on line 277
[Tue Jul 18 09:59:54.134108 2023] [php:error] [pid 1255] [client 192.168.1.??:56427] PHP Fatal error: Uncaught Error: Undefined constant "Min" in /usr/local/www/data/xxx.php:277\nStack trace:\n#0 {main}\n thrown in /usr/local/www/data/xxx.php on line 277
: : :