ようへいの日々精進XP

よかろうもん

2021 年 01 月 21 日 (木)

アクティビティ (今までの走行 (歩行) 距離)

https://pixe.la/v1/users/inokappa/graphs/fitbit-activity

Fitibit Charge2 のアクティビティから走行 (歩行) 距離を Fitbit Web API で取得して Pixela で草生やしている。色が濃くなれば濃くなる程強度が高い (歩行、走行距離が長い) ということで。実装の詳細はこちら

ジョギング

  • 体調がイマイチだったので、完全休養

読書

今日は通院日で受診を待っている時間でで、Webで使えるmrubyシステムプログラミング入門 CHAPTER 05 読み直し。少しずつだけど、内容を理解出来るようになった。そのままの勢いで CHAPTER 06 を少し読み始めた。まだまだ C 言語周りの用語が多々出てくるので、ページを行ったり来たりしているけど、不思議と挫折しないで読み進められるので引き続き頑張ろう。

レアジョブ

今日はお休み。いつも先生が予約取れない状況だったけど、明日の 19 時に予約が取れた。

夕飯

冷蔵庫にベーコンの塊があったので、プチトマトやら茄子やらエリンギ等を刻んでソースにしてパスタを作った。そこそこ美味しゅうございました。最近、皿洗いをすることが多いけど、手荒れが酷くて辛い。奥さんの苦労を実感した。食洗機を導入しようかな...

GCP の Monitoring Alert Policy を Terraform で設定しようとして...

思ったよりも苦労した。

既に設定済みの Alert Policy をインポートしようとして、ドキュメントを読んでみたんだけど...

$ terraform import google_monitoring_alert_policy.default {{name}}

{{name}} ここの値はどこから取得するのか解らなくて小一時間右往左往した。しかも name なのか {{name}} (波括弧を含む) のか、解らなくて右往左往した。

結局、gcloud コマンドを使って、Alert Policy のリストを取得することで、name を確認することが出来た。

$ gcloud alpha monitoring policies list

cloud.google.com

cloud.google.com

上記のコマンドを実行すると、以下のように YAML 形式で Alert Policy を取得出来た。

---
combiner: OR
conditions:
- conditionThreshold:
    aggregations:
    - alignmentPeriod: 60s
      crossSeriesReducer: REDUCE_COUNT
      perSeriesAligner: ALIGN_MEAN
    comparison: COMPARISON_GT
    duration: 0s
    filter: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
    thresholdValue: 50.0
    trigger:
      count: 1
  displayName: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
  name: projects/project_name/alertPolicies/1234567890123456/conditions/1234567890123456
creationRecord:
  mutateTime: '2021-01-21T10:09:37.537443475Z'
  mutatedBy: xxxxx@xxxxx.jp
displayName: xxxxxxxxxxxxxxxxxxxxxxx
documentation:
  content: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
  mimeType: text/markdown
enabled: true
mutationRecord:
  mutateTime: '2021-01-21T10:09:37.537443475Z'
  mutatedBy: xxxxx@xxxxx.jp
name: projects/project_name/alertPolicies/1234567890123456
notificationChannels:
- projects/project_name/notificationChannels/xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

上記の YAML ドキュメントの name: projects/project_name/alertPolicies/1234567890123456 を利用して、以下のように terraform import 出来た。

$ terraform import google_monitoring_alert_policy.default projects/project_name/alertPolicies/1234567890123456

波括弧は不要。

結局、conditionThresholdfilter 指定は、実際に Web コンソールをポチポチした方が良いということが解って、且つ、CloudWatch Alarm を Terraform で設定するよりも敷居が高いことを痛感した。