【IBM Cloud】Code Engineでジョブログを確認する方法

IBM Cloud
スポンサーリンク

Code Engineとは

IBM Cloudさんは「フルマネージド型のコンテナ・ランタイムでコンテナ、アプリケーション・コード、バッチ・ジョブを実行します。」と説明しています。

もっと詳しく説明すると、Docker HUBなどのレジストリサービスからイメージを持ってきてコンテナを生成し、httpリクエストを受けたり、バッチジョブを実行したりということができます。

サーバレスのコンテナ実行環境が簡単に作れるサービスですね。

IBM Cloud Code Engine - 概要
IBM Cloud Code Engineは、フルマネージド型サーバーレス・プラットフォームであり、Webアプリケーション、マイクロサービス、イベント・ドリブン関数などを含む、コンテナ化されたワークロードを実行します。

料金

以下のような料金設定になっています。(2022/2/11現在)

料金CPUメモリ着信要求
無料範囲10万vCPU秒/月1か月あたり200,000 GB秒1か月あたり100,000件のHTTP要求
無料範囲を超えた場合vCPU秒あたり
約0.0037 円
1GB秒あたり0.00038 円HTTP要求100万あたり57.93 円

個人で使用する分には無料範囲を超えることはまず無いと思います。
もちろん稼働状況にもよりますので、あくまでご参考程度にお願いいたします。

IBM Cloud Code Engine - 料金体系
IBM Cloud® Code Engineの柔軟な料金体系オプションをご活用ください。 無料プランから始めて、ビジネス・ニーズの拡大に応じて標準プランに拡張します。

バッチジョブのログ確認

今回は実行したバッチジョブのログを確認したいと思います。

以下、前提条件となります。

  • ジョブの実行まで済んでいる
  • IBM Cloud CLI インストール済み

IBM Cloud CLI インストールからログインまでの解説記事をあげています。
お済でない方はぜひご覧ください!

実行確認

バッチジョブが正常終了するとジョブ実行エリアに結果が生成されます。

ジョブの大まかな結果はコンソールでも確認できますが、プログラムで出力した内容までは見ることができません。

細かい内容は現状、LogDNAかIBM Cloud CLIで確認するほかありません。
LogDNAは有料サービスなので今回はCLIで確認します。

Code Engineのプラグインをインストールします。

ibmcloud plugin install code-engine

プラグイン導入後はインストールされたか確認しましょう。

ibmcloud plugin list

プラグイン名                            バージョン   Status               サポートされるプライベート・エンドポイント
code-engine[ce]                         1.12.0       更新が使用可能です   false

IBM Cloudにログインします。

ibmcloud login

ログを確認するためにプロジェクト名とリソースグループが必要なのでここで確認します。

ibmcloud ce project list

プロジェクトを取得中...
OK

名前           ID                                    状況          Enabled  選択済み  タグ  領域    リソース・グループ  経過時間
test           xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx  active        true     true            jp-tok  Default             3d19h

コンソールでも確認できます。

リソースグループを設定します。

ibmcloud target -g [リソースグループ]

プロジェクトを設定します。

ibmcloud ce project select -n [プロジェクト名]

ジョブの実行結果一覧を出力します。
コンソールからも確認できますが、今回はCLIで出力します。

ibmcloud ce jobrun list

ジョブログを取得します。
今回は「Hello CodeEngine!!」と出力する自作イメージを使ったので、想定通りの出力がされていることを確認できました。

ibmcloud ce jobrun logs --jobrun [ジョブの実行名]

ジョブ実行 'pythontest-job-xx-jobrun-xxxxx' のすべてのインスタンスのログを取得中...
ジョブ実行 'pythontest-job-xx-jobrun-xxxxx' を取得中...
ジョブ実行 'pythontest-job-xx-jobrun-xxxxx' のインスタンスを取得中...
OK

pythontest-job-xx-jobrun-xxxxx-0-0/pythontest-job-xx:
Hello CodeEngine!!
タイトルとURLをコピーしました