皆さんこんにちは。最近眠すぎるid:k-furusawa--gです。日光浴びてないせいだと思います。ステイホーム。
今回は以前記事で紹介させていただきました「使用状況レポート」がコストおよび使用状況レポートにリニューアルされたので、紹介させていただきます。
本記事の目次です。
【2020/07/28 Update】報告されていないバグについて
当レポートは以下のような、既知の問題に報告がされていないバグが含まれていますので(2020/08/03に修正される予定)、もしもこれを使う業務フローを考えている場合は、ご注意ください。
-
レポートは更新月(または契約月)の一番最初の日(3/17に購入の場合は4/17)の情報から得られるわけではない
後述するのですが、本レポートはサービス開始が最近(2020/04/25)です。その関係か、最初のコスト発生から情報が記載されるわけではありません。これによって、レポートで計算した結果とAPIやコンソールを利用した場合とでコスト総額が大きくずれ込みます。遅れた分を後日レポート作成してくれれば済む話なのですが、そういうこともしてくれません。今後改善する可能性があります。
-
MyServiceAPI(MeteringAPI)で取得したコスト情報と得られる結果が違う
これは報告がされていないだけでバグであるとサポートから回答を得ているものですが、MyServiceAPI(MeteringAPI)で取得したコスト情報とで金額が矛盾します。前述のレポートと同じでコスト取得が遅れるのが原因だと説明を受けたのですが、2か月前のコスト情報がすでにズレており、また、その差額を埋めるためのレポートも後日作成されるわけではないため、コストレポートで計算すると誤った情報になります。
金額自体はMyServiceAPIから得られるものが正しいそうですので、コストの計算はMyServiceAPIを使うのが賢明のようです。
また、金額の修正を望む場合は、金額がズレていることを示す情報(スクリーンショットやHARファイル)が必要であり、それをサポートを通じて報告すれば手動で対応するとのことです。
今のところ、上記2点を確認しサポートでも確認が取れています。コスト情報を提供するサービスとして致命的なのですが、すでに把握されており修正は行っているとのことです。ただ、それなら既知の問題として提供し、顧客側に説明をしておくべきだと思うのですが、OCIはそのあたりの情報提供の手順がまだうまく機能していないようです。
業務で当レポートを使うことを検討している場合は、お気を付けください。
利用方法
【2020/07/28 Update】Oracle Cloud Infrastructure の使用状況レポートが「コストおよび使用状況レポート」としてリニューアル
公式の設定ドキュメントは以下です。
専用のポリシーをマルチテナントとして登録することで、レポートが格納されるバケットにアクセス可能となります。
AWSのコストレポートのように、自分の指定した場所に格納などはやはり今もできないようです。
記載される内容について
気になるのはその中身です。
前回の記事では、使用状況レポートについてはOracle Cloud Infrastructure(OCI)内で利用されたリソースに関してのみ扱うと紹介し、そこからOracleCloud内の全利用額を計算することはできないと書かせていただきました。
今回のリニューアルに際して、この辺りの事情に変更があったのか、サポートに問い合わせて確認を行ってみました。回答は以下です。
・コストレポートは、OCIおよびOCI-Cのコスト ・使用状況レポートは、OCIのみの使用状況
OCIがOracle Cloud Infrastructure、OCI-CがOracle Cloud Classicのことです。つまり、使用状況レポートに関しては引き続きClassicの内容を扱いませんが、コストレポートに関してはClassicにも対応しているということですね。
コストレポートのほうに全サービスの内容が入るようになったのはうれしいですね。
スキーマについて
各レポートのスキーマ情報に関しては、公式ドキュメントが用意されています。
ドキュメントを読んでもわかりますが、ほぼほぼコストレポートが使用状況レポートの内容も備えているため、事実上使用状況レポートの後継がコストレポートということのようです。
また、以前のバージョンでは「将来用の予約カラム」なんていうのがありましたが、今回からなくなったようです。フォーマットが決まったということでしょう。
ただ、まだ改修の途中の様子で、一部のフィールド名がファイルごとに違っていたりします。例えば初期のファイルには backReference
はありません。途中で追加されたようです。description
も初期のファイルでは Description
で頭が大文字になっています(おそらくTypo)。なのでこのファイルを読み込んでパースなどを考えている場合は、フィールド名の変更をある程度想定した実装にしておく必要がありますのでご注意ください。
保持期間
ドキュメントにも記載がありますが、保持される期間は1年間です。
これを変更する手段は用意されていないようです。おそらく格納先バケットをOracleCloudが所有する関係だと思います
いつの情報から取得できるのか
レポートの格納開始日に関しては、レポートのサービスが開始された日(サービスインになった日)となります。
今回のコストレポートに関しては、弊社の環境だと2020年4月25日から開始されたため、2020年4月25日以降のレポートしか格納されていません。おそらく開始日は契約環境によってバラつきがあると思いますのでご確認ください(なぜかOracleCloudは契約した時期によって提供されるサービスやバージョンが異なります)。
それより前のコスト情報が欲しい場合は、以前紹介したAPI類をご利用ください。
Oracle Cloud Infrastructure REST APIをリクエストしてみた vol.3: Account Metering REST API編
ただし、このAPIでも利用した全サービスのコスト情報が取得できますが、もともとClassic用なので取れる情報の商品名やサービス名がレポートとは異なりますのでご注意ください。つまりレポートとの組み合わせによって完全なコスト履歴を作成することはできません。
感想
利用している全サービスのコスト情報が何かしらの状態で提供されるようになったのは良いアップデートだと思います。
とはいえ、やはりAWSのコストレポートと比べると扱いにくさは否めない印象です。AWSは指定したS3に格納されます。S3の利便性の恩恵を得られるわけですね。出力設定類もありバケットも日付によって区切られるので迷いがないです。
OCIのレポートは格納先のバケットがユーザー側の管理下にない、ファイル名が独自でいつのファイルなのかわからず直感的ではないなど、あまりユーザーフレンドリーな設計にはなっていません。
逆に、ポリシー設定さえすればすぐに見ることが可能なので、AWSのようにあれこれ設定をしなくてもいいというメリットはあります。単に確認だけが目的の場合は十分だと感じました。
おしまいに
コスト情報の提供や分析の分野は、正直あまり海外では活発でなく、どうしても後発になりがちです。OCIも例外ではなく、弊社が使い始めた当時などは分析画面さえ存在しませんでした(Classicから見るしかなかった)。
新たなコスト分析画面の提供や、今回のコストレポートの提供など、ようやくOCIもコスト情報の開示に前向きになってくれたかなと感じています。
この調子でどんどん扱いやすくなってほしいです。