WatcherのActionで時刻を扱う方法

KibanaのWatcherを使用し、特定条件下でEメールを送信するような以下のActionの定義を行っています

  "actions": {
    "send_email": {
      "email": {
        "profile": "standard",
        "to": [
          "XXXXX@XXX.com"
        ],
        "subject": "XXXXX",
        "body": {
          "text": """―――――――――――――――――――――――――
XXXXX
―――――――――――――――――――――――――

XXXX  : XXXX
XXXX  : XXXX
監視実行時間 : {{ctx.trigger.scheduled_time}}

メール本文に監視実行時間を載せたいのですが、そのまま載せるとUTC時刻でメール本文に載ってしまうようです。JTCで載せる方法についてご教示頂けないでしょうか?
ctx.trigger.scheduled_timeに9Hを加算した時刻を載せることが出来ればJTCになると思うのですが、その方法が分からずにおります。

こんにちわ

ベストのやり方かどうかは分かりませんが、painlessスクリプトで9時間足してしまう例をあげます。

こちらに日付の増減の例がありましたので、こちらを参考にしました。

もともとWathcerのサンプルとして入っている設定を使いました。
trasnformのところで、9時間足したものをjstとして保持しています。
actionsは例ですが、もともとのトリガー時間と9時間足したものを両方出すようにしてテストしました。

 "transform": {
    "script": "return ['jst' : ctx.trigger.scheduled_time.plusHours(9)]" 
  },
  "actions": {
    "my-logging-action": {
      "logging": {
        "level": "info",
        "text": "監視実行時間 :{{ctx.trigger.scheduled_time}} /  {{ctx.payload.jst}}  / There are {{ctx.payload.hits.total}} documents in your index. Threshold is 10."
      }
    }
  }

watcherのsimulationの結果で見てみると、確かに9時間足した時間が表示されていることが分かるかと思います。

ご参考になれば幸いです。

1 Like

This topic was automatically closed 28 days after the last reply. New replies are no longer allowed.