Pocket

Halloween!!

今年はコロナで仮装することができません!というわけでブログお久しぶりなのですが!

DigitalOceanで毎月の請求はメールで確認するのですが、実はDigitalOceanにはAPIが豊富でして、dropletの操作だけでなく、リソースの一覧など確認できたり、様々な用途によってカスタマイズ可能となります。今回はメールで請求書を確認するだけではなくて、シェルスクリプトSlackに通知させるように作ってみました。まずはコンソールからAPI tokenを作りましょう。


■Make API

  • Applications & API


■List Billing History

https://developers.digitalocean.com/documentation/v2/#billing-history

  • sample

サンプルが既に書いてあるのでこれを元にシェルスクリプトを作ってみます。

  • run

curlで叩くとこんな感じでJSONで値が返ってきます。必要なのは dateamount でよろしいでしょうね。あとは軽くjqコマンドで加工して、SlackIncoming Webhookを新規で作成しましょう。


■billing.sh

  • cron

  • Run!!

とりあえず個人サーバーのcronでシェルを叩くようにしてみました。上記のようにSlackに通知来ればOK!(見た目ダサいけども気にしない)


■まとめ

これで素早くコスト確認できるようになった!他にもAPI叩いて検証してみます!CircleCIのスケジュール機能でも良かったけどbashだしいいかな.. →移行した。

[CircleCI][Trigger]ジョブのスケジューリングをcronで定期実行する

※Goに移行しました!

[DigitalOcean]3年前に作った毎月の請求Slack通知をシェルスクリプトからGoに移行してみた

Pocket


adachin

1989年生まれのSRE。ホスティングから大規模なアドテクなどのインフラエンジニアとして携わる。現在はサービスの信頼性向上、DevOps、可用性、レイテンシ、パフォーマンス、モニタリング、オブザーバビリティ、緊急対応、AWS/Azureでのインフラ構築、Docker開発環境の提供、Kubernetes保守、インフラコード化、新技術の検証、リファクタリング、セキュリティ強化などを担当している。個人事業主では数社サーバー保守とベンチャー企業のSREインフラコンサルティングやMENTAで未経験者にインフラのコーチング/コミュニティの運用を実施している。また、「脆弱性スキャナVuls」のOSS活動もしており、自称エバンジェリスト/技術広報/テクニカルサポート/コントリビュータでもある。

0件のコメント

コメントを残す

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください