私はEC2実行インスタンスのログを監視するために "cloudwatch"サービスを持っています。しかし、ColudWatch Webコンソールには、ログデータをダウンロード/エクスポートするためのボタンがないようです。AWS CloudWatch | EC2サーバーにログをエクスポート
どのように私はCLIまたはGUIを介してこの目標を達成することができます任意のアイデア? boto3(パイソン)を使用して
私はEC2実行インスタンスのログを監視するために "cloudwatch"サービスを持っています。しかし、ColudWatch Webコンソールには、ログデータをダウンロード/エクスポートするためのボタンがないようです。AWS CloudWatch | EC2サーバーにログをエクスポート
どのように私はCLIまたはGUIを介してこの目標を達成することができます任意のアイデア? boto3(パイソン)を使用して
プログラムで、
log_client=boto3.client('logs')
result_1=log_client.describe_log_streams(logGroupName='<NAME>')
(私はEC2インスタンスのグループ名がどのように見えるかをログ知りません。ラムダのために、彼らは、フォーム'/aws/lambda/FuncName'
であるあなたが見る名前をつかんでみてください。コンソールで)。
result_1
には2つの便利なキーが含まれています。logStreams
(必要な結果)とnextToken
(ページングの場合は、使用方法を見てみましょう)。
result_1['logStreams']
は、logStreamName
を含むオブジェクトのリストです。有用なものは、firstEventTimestamp
およびlastEventTimestamp
です。
今、あなたはストリーム名をログに記録していることを、あなたは応答がページネーションのためのnextForwardToken
とnextBackwardToken
が含まれており、あなたがするログイベントのevents
log_client.get_log_events(logGroupName='<name>',logStreamName='<name>'
を使用することができます。各イベントにはtimestamp
とmessage
が含まれています。
APIを参照して、他のパラメータが役立つかどうかを確認してください。ちなみに、コンソールではS3バケットまたはAWSのElasticSearchサービスにログをストリーミングできます。 ElasticSearchは使用する喜びであり、KibanaのUIは直感的で、クエリ言語を習得しなくても結果を得ることができます。
コンソールまたはAWS CLIを使用してCloudWatchログをAmazon S3にダウンロードできます。ロググループ名は、&からログのタイムスタンプ、宛先バケット、およびプレフィックスまで知る必要があります。 Amazonはログ用に別のS3バケットを推奨しています。バケットを作成したらエクスポートタスクを作成します(コンソールで)ナビゲーション - ログ - ロググループを選択 - アクション - S3へのデータのエクスポート - エクスポートの詳細の記入 - データのエクスポートを選択します。 Amazonのドキュメントは、それをかなりよく説明しています:http://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/S3Export.html。 CLIの指示には、それを使用したい場合もあります。 CLIを使ってエクスポートをスクリプト化することもできますが、既存のエクスポートを上書きしないように変数を何らかの形で定義する必要があります。
AWSディザスタリカバリ計画の一部である場合は、アマゾンのAWSディザスタリカバリに関するホワイトペーパーやcloud for disaster recoveryの使用に関するNetAppのヒントなどのヒント&のヒントを参照してください。