Show HN: Netmon – 皮肉なAIレポートをTelegramに送信するセルフホスト型LANモニター
Netmon は、1時間ごとに速度テストを実行し、LANデバイスをスキャンして、データをローカルのSQLiteデータベースに記録する軽量なセルフホスト型ネットワーク監視ツールです。4時間ごとに、24時間のトレンドグラフと皮肉なLLM分析を含む詳細レポートをTelegram経由で配信します。完全にプライベートでセルフホスト型であり、ローカルLLMとクラウドLLMの両方をサポートします。
Netmon は、ネットワークの状況を詳細に把握しつつ、少しのユーモアも楽しみたいユーザー向けのセルフホスト型LAN監視ツールです。1時間ごとに速度テスト(speedtest-cliを使用)とLANデバイススキャン(nmap ARPスキャン経由)を実行し、すべてのメトリクスをローカルのSQLiteデータベースに保存します。4時間ごとに、過去24時間のネットワークトレンドを示すmatplotlibグラフと、LLM(大規模言語モデル)が生成した皮肉な分析を組み合わせた包括的なレポートを生成します。これらのレポートはTelegramボットを介して送信され、ネットワークの状態を常に把握できます。
このプロジェクトは完全にプライベートでセルフホスト型です。すべての処理はローカルマシン(Raspberry Piなど)で行われ、テキストレポートとグラフ画像のみがTelegramチャットに送信されます。OpenAI APIやローカルサーバー(Ollama、LM Studioなど)を含むさまざまなLLMバックエンドをサポートしており、レポート品質を最適化するには少なくとも70億パラメータのモデルを使用することを推奨します。
セットアッププロセスは比較的簡単ですが、いくつかのシステム依存関係が必要です。nmapとspeedtest-cliをシステム全体にインストールし、ARPスキャン用にnmapのパスワードなしsudoを設定する必要があります。プロジェクトはuvを使用してPython環境と依存関係を管理し、デプロイを簡素化します。設定は.envファイルで管理され、APIキーやTelegramトークンなどが含まれます。
Netmonの出力には、1時間ごとのステータス更新(簡潔な「すべて良好」または「回線が死にかけています」)と、4時間ごとの詳細レポート(グラフと皮肉な要約付き)が含まれます。例えば、「誰かがまた帯域を占有している」とか「ISPのネズミがまた光ファイバーをかじっている」といった指摘があります。このユーモラスなアプローチにより、ネットワーク監視が楽しく実用的なものになります。
プロジェクトはMITライセンスの下で公開されており、コードはGitHubでホストされています。現在のスター数は1、フォーク数は0です。コミュニティからのコントリビューションやフィードバックを歓迎します。従来の退屈な監視ツールに飽きているなら、Netmonが新鮮な体験を提供するかもしれません。