Log Service システムアーキテクチャは、下図のとおりです。

図 1. 製品アーキテクチャ


Logtail

Logtail は、ログを迅速に収集するのに役立つエージェントで、次の機能があります。
  • ログファイルから排他制御でログ収集
    • 読み取りファイルのみ
    • 読み取り処理中は排他制御
  • 安全で信頼性が高い
    • ログローテーションにより、データを損失することがない
    • ローカルにキャッシュ
    • ネットワークの例外があった場合には再試行
  • 便利な管理
    • Web 上で管理
    • 視覚化の設定可
  • 包括的なセルフプロテクション
    • プロセスの消費 CPU と消費メモリをリアルタイムにモニタリング
    • メモリ使用量に上限あり

フロントエンドサーバー

フロントエンドサーバは、 LVS + Nginx で構築されており、次の機能があります。
  • HTTP プロトコルおよび REST プロトコル
  • 水平スケーリング
    • トラフィック増量時に水平スケーリング
    • フロントエンドサーバーを追加することにより、処理能力の向上に迅速に対応
  • 高スループットで低遅延
    • 純粋な非同期処理 - リクエストの例外により、他のリクエストに影響を及ぼさない
    • ログ専用 Lz4 圧縮の採用により、各マシンの処理能力を向上し、ネットワーク帯域幅を削減

バックエンドサーバー

バックエンドは、複数のマシンに処理が分散されます。Logstore のデータは、MaxCompute にリアルタイムに保存、インデックス作成、クエリ、転送します。バックエンドサービス全体は次のように機能します。
  • 高いデータセキュリティ
    • 各ログを 3 か所に格納
    • ディスクの損壊、マシンのハードウェア/ソフトウェアにシステムエラーが発生した場合、データを自動複製、自動修復
  • 安定したサービス
    • プロセスのクラッシュや長時間マシン応答のない場合は、自動的に Logstore を移行
    • 自動 Server Load Balancer により、トラフィックを各マシンに均等に分配
    • 異常なユーザー操作が、他のユーザーに影響を及ぼすことのないよう厳格に制限
  • 水平スケーリング
    • シャード単位に水平スケーリング
    • スループット向上に、シャードを動的に追加可能