Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
GAS経由でAWS Cost Explorerを使用して料金を取得してみた
Search
K.Takeuchi
March 06, 2024
Business
0
270
GAS経由でAWS Cost Explorerを使用して料金を取得してみた
第2回インフラLT会で発表した資料になります。
K.Takeuchi
March 06, 2024
Tweet
Share
Other Decks in Business
See All in Business
エンジニア→PM進化論
natty_natty254
2
180
【株式会社Amazia】26年度新卒採用資料
amazia200910
0
160
2024年12月期_通期決算説明資料
mobcast20040326
PRO
0
290
Pleap Inc. Corporate deck for Recruit
medimo
PRO
0
490
VISASQ: ABOUT DEV TEAM
eikohashiba
3
23k
株式会社Domuz会社紹介資料(採用)
kimpachi_d
0
20k
エンジニア職/新卒向け会社紹介資料(テックファーム株式会社)
techfirm
1
3.8k
営業職/新卒向け会社紹介資料(テックファーム株式会社)
techfirm
1
380
一般社団法人ディレクションサポート協会(DiSA)
masakisukeda
0
530
ITエンジニアのためのコーポレートファイナンス入門シリーズ!#全体像理解
tkhresk
2
230
効果的なふりかえりは 仮説設定が9割
madai0517
1
1k
アノマリーマーケティング カルチャーコード_ver1.0
anomalymarketing
1
110
Featured
See All Featured
Designing for humans not robots
tammielis
250
25k
Documentation Writing (for coders)
carmenintech
67
4.6k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
45
2.3k
RailsConf 2023
tenderlove
29
1k
We Have a Design System, Now What?
morganepeng
51
7.4k
Into the Great Unknown - MozCon
thekraken
35
1.6k
Adopting Sorbet at Scale
ufuk
74
9.2k
How STYLIGHT went responsive
nonsquared
98
5.3k
Speed Design
sergeychernyshev
25
780
Why You Should Never Use an ORM
jnunemaker
PRO
55
9.2k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
8
270
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
29
1k
Transcript
Copyright (C) 2020 Toranoana Inc. All Rights Reserved. GAS経由でAWS Cost
Explorer を 使用して料金を取得してみた 1
Copyright (C) 2020 Toranoana Inc. All Rights Reserved. 目的 2
• 業務でAWSの利用料金を確認する機会が多い ◦ 複数のアカウントがあるため、ログインが手間となる。 ▪ AWS アカウントにログインせず料金を取得したい。
Copyright (C) 2020 Toranoana Inc. All Rights Reserved. やってみたこと 3
下記の記事を参考にして、実際に料金の取得ができるかを試した。 • 内容 ◦ AWSの月額コストを取得して、スプレッドシートに書き込む ▼GASでAWS Cost Explorerから料金を取得する https://aws-sec-blog.pages.dev/posts/gas-cost-explorer-month/
Copyright (C) 2020 Toranoana Inc. All Rights Reserved. AWSにおける準備 4
• AWS CLI を実行するためのIAMユーザを作成する。
Copyright (C) 2020 Toranoana Inc. All Rights Reserved. IAMユーザの権限設定 5
• 許可ポリシーを追加 ◦ Cost explorer への参照権限のみ
Copyright (C) 2020 Toranoana Inc. All Rights Reserved. GAS上の準備 6
• スプレッドシートより、「Apps Scirpt」を選択する。
Copyright (C) 2020 Toranoana Inc. All Rights Reserved. GAS上の準備 7
• ファイルの横の+を押して、「スクリプト」を選択する。 • 名前をaws.gsに変更する。
Copyright (C) 2020 Toranoana Inc. All Rights Reserved. GAS上の準備 8
• aws.gsファイルをコードを張り付ける。 ◦ Google Apps スクリプト内から AWS API リクエストを認証できる
Copyright (C) 2020 Toranoana Inc. All Rights Reserved. GAS上の準備 9
• 新しいスクリプトを作成する。 ◦ 名前:main.gs ◦ テスト関数をコピーして張り付ける。
Copyright (C) 2020 Toranoana Inc. All Rights Reserved. GAS上の準備 10
• main.gsにaws AccessKey ,SecretKey を設定する。
Copyright (C) 2020 Toranoana Inc. All Rights Reserved. テスト実行 11
• 実行する。 ◦ 2023/6月分の費用を出力できた。
Copyright (C) 2020 Toranoana Inc. All Rights Reserved. コードを変更してみる 12
• サービスごとの料金を取得してみる。 ◦ Start:2023/10/1、End:2023/12/01 ◦ Key:サービスにてグループ化
Copyright (C) 2020 Toranoana Inc. All Rights Reserved. スプレッドシートへ出力してみる。 13
GASのコード修正が必要だったので、 以下を要件としてChatGPTに質問して 修正コードを確認した。 • アカウント名ごとにシートを分ける。 • 1行に以下を出力する。 ◦ アカウント名、アカウントID、 サービス名、日付、コスト
Copyright (C) 2020 Toranoana Inc. All Rights Reserved. スプレッドシートへ出力してみる。 14
構文エラーなどを繰り返しながらも、アカウントごとのシートに 料金が出力されるようになった。
Copyright (C) 2020 Toranoana Inc. All Rights Reserved. まとめ 15
• ネット上のサンプルコードを使用したが、AWS側の権限を サービス指定で読み取りのみに制限することで比較的安心して使用でき た。 • AWS Cost Explorerのパラメータを編集することで、アカウント単位やサー ビス単位での料金を出力ができた。 • スプレッドシートに書き込みができたため、今後はLooker Studio などで見 える化を図りたい。