ログとオブザーバビリティ
EMQXは、システムの監視、管理、および診断を支援する一連のオブザーバビリティ関連機能を提供しています。これらの機能はすべて、ダッシュボードの以下のメニュー項目からアクセスおよび設定が可能です。
監視:
EMQXはメトリクス監視機能を提供しており、運用・保守担当者はこれを基に現在のサービス状況を監視し、システムの潜在的な不具合をトラブルシューティングできます。ユーザーはEMQXダッシュボード、HTTP API、およびシステムトピックを使用してメトリクスデータを追跡できます。
EMQXにはCPU使用率、システムおよびプロセスメモリ使用率、プロセス数、ルールエンジンのリソース状況、クラスターのパーティションおよび修復状況を監視する組み込みの監視・アラーム機能があり、システムの異常発生時にアラームを発報します。
管理:
ログはトラブルシューティングやシステムパフォーマンスの最適化における信頼できる情報源です。EMQXのログからアクセス状況、操作履歴、ネットワーク問題の記録を確認できます。
PrometheusはSoundCloudがオープンソースで提供する監視ソリューションで、多次元データモデル、柔軟なクエリ言語、強力なアラーム管理を特徴としています。EMQXはPrometheusとの統合をサポートし、システムメトリクスの収集や
pushgatewayへのメトリクスプッシュが可能です。Datadogはアプリケーションの統合的かつリアルタイムなオブザーバビリティとセキュリティソリューションを提供するプラットフォームです。EMQXはDatadogとの統合をサポートし、EMQXの稼働状況の把握、システムパフォーマンス問題の監視・トラブルシューティング、Datadogコンソール上でのメトリクス閲覧を支援します。
診断:
EMQXはトピックメトリクス機能を提供しており、特定のトピックに対して送受信されたメッセージ数、レートなどのメトリクスをカウントできます。この機能はダッシュボードの診断 -> トピックメトリクスページから閲覧・利用でき、HTTP APIでも設定可能です。
通常、EMQXはメッセージ送信をミリ秒単位で完了しますが、主にネットワークの影響を受けます。しかしクライアント側でサブスクリプションメッセージのレイテンシが非常に高くなるケースがあります。この問題を解決するために、EMQXはスローサブスクリプション機能を提供しています。
EMQX 5.xではログトレース機能が追加され、特定のクライアントID、トピック、またはIPに対してリアルタイムでデバッグレベルのログ出力のみを有効化できます。