0

私はEC2実行インスタンスのログを監視するために "cloudwatch"サービスを持っています。しかし、ColudWatch Webコンソールには、ログデータをダウンロード/エクスポートするためのボタンがないようです。AWS CloudWatch | EC2サーバーにログをエクスポート

どのように私はCLIまたはGUIを介してこの目標を達成することができます任意のアイデア? boto3(パイソン)を使用して

答えて

0

プログラムで、

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です。

今、あなたはストリーム名をログに記録していることを、あなたは応答がページネーションのためのnextForwardTokennextBackwardTokenが含まれており、あなたがするログイベントのevents

log_client.get_log_events(logGroupName='<name>',logStreamName='<name>' 

を使用することができます。各イベントにはtimestampmessageが含まれています。

APIを参照して、他のパラメータが役立つかどうかを確認してください。ちなみに、コンソールではS3バケットまたはAWSのElasticSearchサービスにログをストリーミングできます。 ElasticSearchは使用する喜びであり、KibanaのUIは直感的で、クエリ言語を習得しなくても結果を得ることができます。

0

コンソールまたは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のヒントなどのヒント&のヒントを参照してください。

関連する問題