さくらのクラウド APIを利用してアーカイブリストをメール送信
さくらのクラウドのアーカイブリストをメールで送信する
さくらのクラウドAPIでアーカイブを自動作成するスクリプトを以前に作成しました。アーカイブが正しくできるているか確認するために、アーカイブリストをメールで送信するシェルスクリプトも作製したので紹介します
さくらのクラウドのAPIを利用して、Curlコマンドでアーカイブの「Name」「ID」「CreatedAt」の値を取得しています。「CreatedAt」でアーカイブが作成された日時が確認できますので、アーカイブ作製のシェルスクリプトがCronで実行された後にレポートメールが配信されるように設定すれば、アーカイブが正しく作成されているか確認できます
#!/bin/bash # https://secure.sakura.ad.jp/cloud/zone/tk1a/api/cloud/1.1/ (東京第1ゾーン) # https://secure.sakura.ad.jp/cloud/zone/is1a/api/cloud/1.1/ (石狩第1ゾーン) # https://secure.sakura.ad.jp/cloud/zone/is1b/api/cloud/1.1/ (石狩第2ゾーン) # https://secure.sakura.ad.jp/cloud/zone/tk1v/api/cloud/1.1/ (Sandbox) TDAY=`date +%Y%m%d` HOSTNAME=`/bin/hostname` access_token=XXXXXXX access_token_secret=XXXXXXX url=https://secure.sakura.ad.jp/cloud/zone/tk1a/api/cloud/1.1/archive MAILTXT=/var/tmp/archive_repot.txt SUBJECT=Sakura_.Archive_List MAILADDR=hoge@example.com if [ $HOSTNAME = "www02" ] ; then curl --user "$access_token":"$access_token_secret" \ -H 'X-Sakura-API-Beautify:1' $url \ | jq -r '. .Archives [] | select(.Name | contains("archive")) \ | .Name, .ID, .CreatedAt' > $MAILTXT #Mail cat $MAILTXT | /bin/mail -s "$SUBJECT" $MAILADDR
- 「Access Token」「Access Token Secret 」「MAILADDR」等の使用する環境に変更して下さい
アーカイブリストをメール送信するシェルスクリプトをCronに登録する
上記で制作したシェルスクリプトをCronに登録します。
アーカイブリストをメールで送信するシェルスクリプトは「ArchiveReport.sh」として、毎日7時に実行されます
0 7 * * * /xxx/xxx/ArchiveReport.sh >/dev/null 2>&1
さくらのクラウドAPI関連記事
ディスカッション
コメント一覧
まだ、コメントがありません