Quantcast
Channel: Bashタグが付けられた新着記事 - Qiita
Viewing all articles
Browse latest Browse all 2817

AWS CLIでGlueJobのruns-statusとcloudwatchのログを良い感じでゲットするシェルを作ってみた

$
0
0

はじめに

どうも、肉と糖質が大好きなおじさんです。
仕事でAWSを使ってますが、マネコンからログを取得するのに
限界を感じたので良い感じのシェルを作りました。
しっかり解説入れようと下書きしていたけど
うっかり消しちゃったのでサクッとシェルだけ投稿します。
あーうっかりうっかり(泣)

・実行ID、ゲットだぜ!

JOBIDを指定して、良い感じの実行状態を取得するシェルです。
JSONを加工してCSVにしてます。
時間もUTCからJSTに変換します。

引数には、JOBIDを指定してください。

statusget.sh
#!/bin/bash#--- 引数チェックif[$# -gt 1 ];then
    echo"エラー:引数が多すぎます。"exit 1;fi#--- tittle printecho"AWS GlueJobs Run Status Check"echo""#--- 引数がなしなら入力プロンプトif[$# -eq 1 ];then
    INPUT_JOBID=$1;else
    echo"取得するJOBIDを入力してください。"read-p":" INPUT_JOBID
fi

if test-z$INPUT_JOBID;then
    echo"エラー:JOBIDを入力してください。"exit 1;fi

filename=$INPUT_JOBID"_result.csv"echo"JobName,JobId,Status,StartedOn,CompetedOn,ExecutionTime">$filename

aws glue get-job-runs --job-name$INPUT_JOBID | jq -r'.JobRuns[] | [.JobName, .Id, .JobRunState, (.StartedOn |tonumber|.+32400|todate), (.CompletedOn |tonumber|.+32400|todate), (.ExecutionTime|tonumber)]| @csv'>>$filenameecho"Finish. output --> "$filenameexit 0;

・ログストリーム、ゲットだぜ!

「行けぇ、ピ※ち※※!!aws cli get-log-events!!
「ぴかぁ…。

引数には上記シェルで取得した、実行IDを指定してください。

logget.sh
#!/bin/bash#---- ロググループは環境に応じて変更してください!!LOG_GROUP=/aws-glue/jobs/#########

#--- 引数チェックif[$# -gt 1 ];then
    echo"エラー:引数が多すぎます。"exit 1;fi#--- tittle printecho"AWS GlueJobs Log Getter Ver1.0"echo""#--- 引数がなしなら入力プロンプトif[$# -eq 1 ];then
    INPUT_RUNID=$1;else
    echo"取得する実行IDを入力してください。"read-p":" INPUT_RUNID
fi

if test-z$INPUT_RUNID;then
    echo"エラー:実行IDを入力してください。"exit 1;fi

filename=`date"+%Y%m%d_%H%M%S_"`$INPUT_RUNID".log"

aws logs get-log-events --log-group-name$LOG_GROUP--log-stream-name$INPUT_RUNID--query"events[].[message]"--output text >$filenameecho"Finish. output --> "$filenameexit 0;

出力されるファイル名は、タイムスタンプ+実行ID.log です。

・おしまいに

シェルの改変などは、ご自由にどうぞ。
AWSのマネコンがもっと使い易くてレスポンスも速くなったら
こんなツールは必要ないんですが、まぁ当分先かなぁ…。

「チラ裏」
M1のMBA最近、買いました。
スッゲー速くて良い感じ。
サイコーです。
あははははは!
ではまた。


Viewing all articles
Browse latest Browse all 2817

Trending Articles