AWS Blu Age ランタイム (Amazon EC2) Amazon CloudWatch アラームを設定する - AWS Mainframe Modernization

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

AWS Blu Age ランタイム (Amazon EC2) Amazon CloudWatch アラームを設定する

アプリケーションログを受信するよう CloudWatch を設定し、エラーの可能性を警告するアラームを追加できます。これにより、デプロイされたアプリケーションに例外が発生するたびに、より見やすい通知を表示できます。以下のセクションは、CloudWatch のログ記録とアラームの設定について理解し、学習するのに役立ちます。

CloudWatch のログ記録のデプロイ

デフォルトでは、 AWS Blu Age ランタイムには という名前のログファイルが含まれていますlogback-cloudwatch.yml。このファイルは application-main.yml ファイルで参照されますが、この参照はコメントアウトされます。

# logging: # config: classpath:logback-cloudwatch.xml

どちらのファイルも config フォルダにあり、上記の行のコメントを解除することで、この機能を有効にできます。以下のセクションで説明するように、CloudWatch のログ記録は設定することができます。

CloudWatch のログ記録の設定

デフォルトの logback-cloudwatch.xml ファイルの内容は次のとおりです。

<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE configuration> <configuration> <appender name="console" class="ch.qos.logback.core.ConsoleAppender"> <encoder> <pattern>%date{yyyy-MM-dd HH:mm:ss.SSS,UTC} %level --- [%thread{15}] %logger{40} : %msg%n%xThrowable</pattern> </encoder> </appender> <appender name="cloudwatch" class="com.netfective.bluage.runtime.cloudwatchlogger.CloudWatchAppender"> <logGroup>BluAgeRuntimeOnEC2-Logs</logGroup> <logStream>%date{yyyy-MM-dd,UTC}.%instanceId.%uuid</logStream> <layout> <pattern>%date{yyyy-MM-dd HH:mm:ss.SSS,UTC} %level --- [%thread{15}] %logger{40} : %msg%n%xThrowable</pattern> </layout> <appender-ref ref="console" /> </appender> <root level="INFO"> <appender-ref ref="cloudwatch" /> </root> </configuration>

<appender name="cloudwatch"/> 要素の外部は、すべて標準的なログバックの設定です。このファイルには、ログをコンソールに送信するコンソールアペンダーと、CloudWatch にログを送信する CloudWatch アペンダーの 2 つのアペンダーがあります。

root 要素の level 属性は、アプリケーション全体のログ記録レベルを指定します。

タグ <appender name="cloudwatch"/> 内の必須の値は次のとおりです。

  • <logGroup/>: CloudWatch のロググループ名を設定します。値が指定されない場合、デフォルトは BluAgeRuntimeOnEC2-Logs になります。ロググループが存在しない場合は、自動的に作成されます。この動作は、次で説明する設定によって変更できます。

  • <logStream/>: CloudWatch の (ロググループ内の) logStream の名前を設定します。

オプションの値:

  • <region/>: ログストリームが書き込まれるリージョンを無効にします。デフォルトでは、ログは EC2 インスタンスと同じリージョンに送られます。

  • <layout/>: ログメッセージが使用するパターン。

  • <maxbatchsize/>: オペレーションごとに CloudWatch に送信するログメッセージの最大数。

  • <maxbatchtimemillis/>: CloudWatch ログが書き込まれるまでの時間 (ミリ秒単位)。

  • <maxqueuewaittimemillis/>: 内部ログキューにリクエストの挿入を試行する時間 (ミリ秒単位)。

  • <internalqueuesize/>: 内部キューの最大サイズ。

  • <createlogdests/>: 存在しない場合はロググループとログストリームを作成します。

  • <initialwaittimemillis/>: スタートアップ時にスレッドを休止させる時間。この最初の待機時間により、最初にログが蓄積されます。

  • <maxeventmessagesize/>: ログイベントの最大サイズ。このサイズを超えるログは送信されません。

  • <truncateeventmessages/>: 長すぎるメッセージは切り捨てられます。

  • <printrejectedevents/>: 緊急アペンダーを有効にします。

CloudWatch の設定

上記の設定でログを CloudWatch に正しくプッシュするため、Amazon EC2 IAM インスタンスプロファイルロールを更新して、「BluAgeRuntimeOnEC2-Logs」ロググループとそのログストリームに対する追加のアクセス許可を付与します。

  • logs:CreateLogStream

  • logs:DescribeLogStreams

  • logs:CreateLogGroup

  • logs:PutLogEvents

  • logs:DescribeLogGroups

アラーム設定

CloudWatch ログにより、アプリケーションやニーズに応じてさまざまなメトリクスやアラームを設定できます。具体的には、使用状況の警告に関するプロアクティブアラームを設定して、アプリケーションが猶予期間に入る (そして最終的にはアプリケーションが動作しなくなる) ようなエラーが発生した場合に警告することができます。これを実現するには、ログに「Error C5001」文字列に関するメトリクスを追加します。これにより、 AWS Blu Age 管理システムへの接続中のエラーが強調表示されます。その後、このメトリクスに反応するアラームを定義できます。