1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

OCI Email Deliveryのメール送信数をOCI CLIで取得する

Posted at

本記事の内容

OCIのEmail Deliveryはサービスリミットにより一日に送信可能なメール数が決められています。指定した時間の範囲で送信したメール数をOCI CLIで把握する方法を試してみたので、その内容を記載します。

確認方法

今回の検証は、OCI ComputeからmailxとEmail Deliveryを用いてメール送信を行い、その結果をOCI CLIで確認するという方法を行っています。

必要な設定は事前に以下ハンズオンを参考に行い、メール送信が可能な状態にしておきます。OCI CLIのインストールはマニュアルを参照して事前に済ませております。
【Email Delivery ハンズオン】
https://oracle-japan.github.io/ocitutorials/intermediates/sending-emails-1/
【OCI CLI】
https://docs.oracle.com/ja-jp/iaas/Content/API/SDKDocs/cliinstall.htm

上記に加え、今回確認するログはEmail Deliveryの配信到達性ダッシュボードのログの有効化が必要になるため、以下マニュアルを参考に設定を行っています。今回は既存のロググループにログを登録するよう設定しました。
【マニュアル】
https://docs.oracle.com/ja-jp/iaas/Content/Email/Reference/dashboard-topic-enabling-logging.htm

検証結果

まずは以下コマンドでメールを送信します。

echo "メールテスト" | mailx -s "メールテスト" <送信先メールアドレス>

メール受信が確認できた後、OCIコンソールのLoggingサービスから、配信到達性ダッシュボードのログの有効化にて設定したロググループでログを確認してみます。
image.png
メールが受信された場合、data.messageが「Accepted email <送信元> → <送信先>」となっていることが分かります。そのため、OCI CLIで検索する際に、以下のように「where data.message = '\''Accepted*'\''」とすることで、成功した送信数を取得します。

oci logging-search search-logs --search-query 'search "<compartment_ocid>/<log_goup_ocid>" | where data.message = '\''Accepted*'\'' | count' --time-start YYYY-MM-DDT00:00:00Z --time-end YYYY-MM-DDT23:59:00Z

検索結果はJSON形式で返されます。

{
  "data": {
    "fields": null,
    "results": [
      {
        "data": {
          "count": 1
        }
      }
    ],
    "summary": {
      "field-count": null,
      "result-count": 1
    }
  }
}

countが「1」となっていることから、対象範囲の時間帯で送信成功したメールの数が取得できたことを確認できました。

最後に

サービスリミットはテナンシに対して課されますが、テナンシ全体のメール送信数を検索する方法は無いようでした。そのため、コンパートメント毎にメール送信数を検索し、それらを集計するようシェルスクリプトを構成することで、指定した検索時間帯でのメール送信数を把握することができると考えられます。

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?