CloudWatch

AWS CloudWatch ノート。

Concepts

Log Events

  • (つね) にログストリームに(ぞく) する
  • 個々(ここ) のログ(ぎょう) またはステートメント

Log Group

  • 関連(かんれん) するログイベントをグループ() する機能(きのう)提供(ていきょう)
  • 1 つのアプリケーションが独自(どくじ) の Log Group にマップ、または複数(ふくすう) サービスのログで構成(こうせい)

Log Stream

  • Log Group は(おお) くの Log Streams を() てる
  • 特定(とくてい) のソース((れい) : EC2 インスタンス(じょう)特定(とくてい) のログファイル)からの(すべ) てのログイベントを(あらわ)

Filtering

2 つのフィルターパターン: {}$.

{$.channel = "github"}
{$.event = "user_login" && $.channel = "google"}

Log Insights Queries

CSV 形式(けいしき) :

fields @message
| parse @message "*,*,*" as timestamp, username, action
| filter action = "Login"
| sort @timestamp desc
| display timestamp, username, action

JSON 形式(けいしき) :

fields @timestamp, user_id, event, channel
| filter @logStream = "first_stream"
| filter event = "user_login"
| sort @timestamp desc
| display @timestamp, user_id, event, channel

Metrics

  • 監視(かんし) する変数(へんすう) : CPU 使用率(しようりつ) 、ネットワーク、請求(せいきゅう) 、ステータスチェック(など)
  • デフォルトメトリクス: 5 (ふん) 間隔(かんかく)
  • 詳細(しょうさい) 監視(かんし) ($$$): 1 (ぷん) 間隔(かんかく)

Common Metrics

サービスメトリクス
EBSディスク()()
S3BucketSizeBytes, NumberOfObjects, AllRequests
BillingTotal Estimated Charge (us-east-1 のみ)
Service LimitsAPI 使用量(しようりょう)
Custom独自(どくじ) メトリクスをプッシュ

Key Concepts

  • Namespace: CloudWatch メトリクスのコンテナ
  • Dimension: メトリクスの ID の一部(いちぶ) である名前(なまえ) /(あたい) ペア(メトリクス(ごと)最大(さいだい) 10)
  • Data Point: 一定(いってい) 期間(きかん)収集(しゅうしゅう) された特定(とくてい) のデータ()

Alarms

  • 任意(にんい) のメトリクスに(たい) して通知(つうち) をトリガー
  • アクション: Auto Scaling、EC2 アクション、SNS 通知(つうち)
  • 評価(ひょうか) する期間(きかん)選択(せんたく) 可能(かのう)

Logs

ログを収集(しゅうしゅう) :

  • Elastic Beanstalk: アプリケーションログ
  • ECS: コンテナログ
  • Lambda: 関数(かんすう) ログ
  • CloudTrail: フィルターに(もと) づく
  • CloudWatch Log Agent: EC2 またはオンプレミスサーバー
  • Route53: DNS クエリ

機能(きのう) :

  • リアルタイム監視(かんし)
  • 調整(ちょうせい) 可能(かのう)保持(ほじ) 期間(きかん)

CloudWatch Agent

デフォルトでは EC2 からのログは CloudWatch に送信(そうしん) されない。必要(ひつよう)手順(てじゅん) :

  1. EC2 で CloudWatch エージェントを実行(じっこう)
  2. IAM 権限(けんげん)(ただ) しいことを確認(かくにん)
CloudWatch Diagram

Setup Options

System Manager 自動(じどう) インストール:

  1. IAM ロールを作成(さくせい) : CloudWatchAgentServerPolicy, AmazonSSMManagedInstanceCore
  2. EC2 インスタンスにロールを接続(せつぞく)
  3. System Manager → Run Command → AWS-ConfigureAWSPackage
  4. Action: Install, Name: AmazonCloudWatchAgent, Version: latest

手動(しゅどう) インストール:

  • IAM ロール: CloudWatchAgentServerPolicy, CloudWatchFullAccess

Sharing Dashboard

  • ユーザー(めい) とパスワードが必要(ひつよう)
  • パブリックアクセス可能(かのう) な URL
  • SSO を使用(しよう)