読者です 読者をやめる 読者になる 読者になる

vague memory

うろ覚えを無くしていこうともがき苦しむ人の備忘録

Terraform Datadog Provider の Import と tf 変換

Terraform Datadog Provider で利用できるリソースの内、Downtime,Monitor,User がインポートに対応しています。 Downtime,MonitorはそれぞれのID、UserはDatadogアカウントのメールアドレスを指定することでインポートが可能です。 # Downtime terraform im…

Terraform Datadog Provider を試してみる

Datadog 公式で Terraform を使った管理方法のブログが公開されていました。(多分2017/04/07公開) Managing Datadog with Terraform Datadog Provider は結構前から用意されていたようですが、 触れたことが無かったので、ほぼDatadogブログの内容のままです…

Datadog DogPushの使い方

Datadog の Help でも紹介されている、Monitor の管理ツールの DogPush に触れる機会があったので、使い方をまとめます。 trueaccord/DogPush: Manage your datadog monitors in files. Helpでの紹介 Can I programmatically maintain or manipulate my Data…

Datadog (dogコマンド) service_check編

Datadog公式のツール dog 使用方法まとめ service_check 編です。 service_check Modes カスタムステータスチェックの送信を行います。 APIは check_run が該当します。 check usage: dog service_check check [-h] [--timestamp TIMESTAMP] [--message MESS…

Datadog (dogコマンド) downtime編

Datadog公式のツール dog 使用方法まとめ downtime 編です。 目次 downtime Modes show 実行例 show_all optional arguments: 実行例 オプション無し current_only オプション post positional arguments: optional arguments: 実行例 オプション無し messag…

Datadog (dogコマンド) host編

Datadog公式のツール dog 使用方法まとめ host 編です。 目次 host Modes mute optional arguments: 実行例 message オプション override オプション unmute 実行例 host Modes host とありますが、操作できるのは mute|unmute のみです。 サブコマンド 説明…

Datadog (dogコマンド) screenboard編

Datadog公式のツール dog 使用方法まとめ screenboard 編です。 目次 screenboard Modes show 実行結果 post positional arguments: optional arguments: 実行例(エラー) 未修正、show コマンド結果JSONの使用 一部修正、show コマンド結果JSONの使用(widget…

Datadog (dogコマンド) timeboard編

Datadog公式のツール dog 使用方法まとめ timeboard 編です。 目次 timeboard Modes show 実行結果 show_all 実行結果 post positional arguments: optional arguments: 実行例(エラー) show コマンド結果JSONの使用 show コマンド結果JSONの使用(graphs配下…

Datadog (dogコマンド) monitor編

Datadog公式のツール dog 使用方法まとめ monitor 編です。 目次 monitor Modes post positional arguments: optional arguments: 実行例 オプション無し metric alert service check event alert name オプション message オプション options オプション フ…

Datadog (dogコマンド) event編

Datadog公式のツール dog 使用方法まとめ event 編です。 目次 event Modes post positional arguments: optional arguments: 実行例 オプション無しで実行 文字数制限 マルチバイト date_happened オプション handle オプション priority オプション relate…

Datadog (dogコマンド) tag編

Datadog公式のツール dog 使用方法まとめ tag 編です。 目次 tag Modes add positional arguments: 実行例 単一タグ指定 複数タグ指定 replace positional arguments: 実行例 show positional arguments: host all detach positional arguments: 実行例 tag …

Datadog (dogコマンド) metric編

Datadog公式のツール dog 使用方法まとめ metric 編です。 目次 metric Modes post positional arguments: optional arguments: 実行例 単純実行 1分以下の間隔で投稿 20秒間隔 5秒間隔 登録データ確認(pointlist) 小数点(decimal) hostオプション no_hostオ…

Datadog (dogコマンド) search編

Datadog公式のツール dog 使用方法まとめ search 編です。 search Modes ヘルプには Search datadog. としかないので、何を検索できるのか謎でしたが、APIリファレンスに記載がありました。 過去24時間のエンティティを検索します。 検索可能なエンティティ…

Datadog (dogコマンド) comment編

Datadog公式のツール dog 使用方法まとめ comment 編です。 目次 comment Modes post 実行例 update 実行例 replay 実行例 show 実行例 delete 実行例 comment Modes Events に表示されるコメント(メッセージ)の操作が行えます。 サブコマンド 説明 post コ…

Datadog (dogコマンド) 導入編

Datadog のコマンドラインツール dog (dogshell) を使ってみようと思いましたが、あまり情報が無かったのでまとめてみます。 Datadog公式のツールで、ライブラリをインストールすることにより使用できるようになります。 DataDog/datadogpy: The Datadog Pyt…

Mackerel Webhook で Lambda 起動

Mackerel のアップデートで Webhook の API Gateway 対応が発表されました。 mackerel-agent経由でのメタデータ登録に対応しました ほか - Mackerel ブログ #mackerelio Webhook のリクエスト先に API Gateway のエンドポイントを指定できるようになりました…

Datadog Monitor から Webhook で Lambda 起動

前回 Datadog から SNS 経由で Lambda Function を起動を行いました。 Datadog MonitorからSNS経由でLambda起動 - vague memory 別の方法を探してみた所、Webhook Integration が使えそうだったので試してみました。 Datadog-Webhooks Integration 1) API Ga…

Datadog MonitorからSNS経由でLambda起動

Datadog から SNS(Amazon Simple Notification Service) への通知ができるということで、 Datadog → SNS → Lambda → Slack で通知情報に+αで情報付与をしてみます。 題材 Lambda で実行可能な物でしたら何でも良いのですが、常々不便を感じていた CloudFron…

RDS for PostgreSQLへ CF/ELB/ALB/S3のアクセスログをそのままインポート(したかった)

S3に出力された CloudFront/ELB/ALB/S3 アクセスログを特に加工せずにRDS PostgreSQLへインポート。。。したかったのですができませんでした。 (極力簡単にインポートし、整形・集計はDB側に任せようと思いました。) PostgreSQL ベースである Redshift と RD…

Redshiftへ ELB/ALB/S3のアクセスログをそのままインポート(したかった)

S3に出力された ELB/ALB/S3 アクセスログを特に加工せずにRedshiftへインポート。。。したかったのですができませんでした。 (極力簡単にインポートし、整形・集計はDB側に任せようと思いました。) スペース区切りで且つクォートが必要最低限しか付いていな…

Redshiftへ CloudFrontのアクセスログをそのままインポート

S3に出力されたCloudFrontアクセスログを特に加工せずにRedshiftへインポートします。 (極力簡単にインポートし、整形・集計はDB側に任せようと思いました。) S3->RedshiftへCOPYコマンドで実現可能です。 Amazon S3 からデータをロードする - Amazon Redshi…

Mackerel事始め check-plugin ログ監視 仕様変更の影響

2017/02/24 追記 再度仕様変更が入ったようなので追記します。 以下の通り修正されたようです。そのため本記事の内容は一時的な変更となりました。 mackerel-agent経由でのメタデータ登録に対応しました ほか - Mackerel ブログ #mackerelio 2017-01-27の告…

Amazon Inspector CVEルールを試してみる

AWS

AWSのセキュリティ評価サービス Amazon Inspector に触れる機会があったので記録しておこうと思います。 CVE(共通脆弱性識別子)ルールパッケージでの実行結果です。 何をどう検査しているのかという細かな情報は公開されていないようでしたので、パッケージ…

EC2 EBS縮小 (というより CentOS ディスク縮小) の流れ

AWS EC2(Linux) のディスクサイズ縮小を行う機会があったので、備忘として整理します。 復旧や作り直しと同意になるので極力行いたくない作業です。 流れは以下のようになります。 各 Volume、Snapshot には判別しやすい名称を付けておくと混乱しないと思い…

Nagios 通知有効/無効を curl で切替

Nagios で通知(Notifications)の有効/無効切替を curl で実行します。 _NAGIOS="nagios.example.com" _NAGIOS_USER="nagiosadmin" _NAGIOS_PASS="nagiosadmin" _HOST="localhost" ## 無効化 # Disable notifications for this host curl -s -S http://${_NAG…

Mackerel事始め AWSインテグレーション タグ絞り込み小ネタ

AWSインテグレーションのタグ絞り込み設定の小ネタです。 適切なタグを付与して使用していれば、いずれも引っ掛かる事は無いと思います。 : を含むタグ CloudFormation でインスタンスを起動した場合や、 Auto Scaling Group 配下のインスタンスに自動的に付…

Mackerel事始め mkr(4) dashboards

mkr v0.11.1 で dashboardsサブコマンドが追加されています。 連続リリース100週目!ダッシュボード生成ツールをリリースしました・ユーザーグループ発足 - Mackerel ブログ #mackerelio 公式に詳細説明があります。 CLIツール mkr を使う - Mackerel ヘルプ…

Mackerel事始め AWSインテグレーション(EC2)

Mackerel の AWS インテグレーションに EC2 が追加されました。 AWS インテグレーションが EC2 に対応しました・mackerel-agent 0.34.0 リリース ほか - Mackerel ブログ #mackerelio とある環境で mackerel-agent のバージョンアップの機会があったので導入…

AWS EC2 インスタンスの復旧(Auto Recovery)設定の落とし穴

AWS

AWS EC2 インスタンスには、 Status Checked Failed 発生時に自動的に復旧を試みる機能があります。 設定自体は正しく行えているように見えるのに、いざ異常発生時に復旧に失敗するケースに当たりました。 Action failed. Encountered error calling EC2 rec…

Mackerel事始め 将来予測機能

Mackerel の将来予測機能を試してみます。 機能としては式による監視で特定の関数(線形回帰)を使って実現するようです。 将来予測機能による監視・グラフ範囲をURLに反映されるように ほか - Mackerel ブログ #mackerelio 式による監視を行う - Mackerel ヘ…

Mackerel事始め mkrで残アラートのクローズ

Mackerelを使用しているとアラート発生後に復旧せずに残り続けるアラートが出てきます。 AWS インテグレーションで CloudWatch 上に値が出力されない物(ELB の ERROR 等、CloudWatch上 0 ではなく、値が無い物)が良く残ります。 Web上から一つずつクリックし…

Mackerel事始め mkrでホストの退役

Mackerel で mkr と WebAPI を使用して poweroff にしたホストを退役します。 今回の判定条件は n日前のメトリクスが無いホストとします。(poweroff 直後のホストは非対象としています) ApiKey/URL/Metricsを設定 検索対象のメトリクスは loadavg5 等必ず存…

Jenkins タイトル/ヘッダー文字の変更

Jenkinsを使っていて、複数環境を使い分ける必要が出てきた場合に、 見た目が全部一緒で判り難いので環境別に表示を変えたいと思いました。 Jenkinsの標準機能では存在せず、Simple Theme Plugin を使用するのが定石のようなので、こちらを使用します。 Simp…

mackerel-plugin-apache2 BASIC認証

ApacheにBASIC認証が掛かっている場合の取得方法です。 ユーザ・パスワードを設定するオプションは無いですが、URLに直接入れ込む形で設定できます。 apache2.conf [plugin.metrics.apache2] command = "/usr/local/bin/mackerel-plugin-apache2 -o <USER>:<PASSWORD>@<HOSTNAME>" type</hostname></password></user>…

Mackerel事始め mkr(3)

Mackerel で mkr を使用した CLI 操作の続きです。 create ホストを作成します。 オプション指定無しだと working で作成されます。 $ mkr create TEST created XXXXXXXXtLu ステータスをメンテナンスとし、ロールを指定した場合 $ mkr create -st maintenan…

Mackerel事始め mkr(2)

Mackerel で mkr を使用した CLI 操作の続きです。 ホスト一覧取得と退役操作を行います。 hosts ホスト一覧を取得します。ホストを対象とする操作を行う際のidを抽出する為に使用します。 オプション オプション ロングオプション 説明 -n --name ホスト名…

Mackerel事始め mkr (1)

Mackerel の CLI 操作を試します。 WebAPIが用意されていますが、APIを簡略化したコマンド mkr があるのでそちらを利用してみます。 CLIツール mkr を使う - Mackerel ヘルプ Go言語によるCLIツール開発とUNIX哲学について - ゆううきブログ 機能 利用頻度の…

AWS Lambda で CloudWatch Logs のログ本文をSlack通知(2)

前回 AWS Lambda で CloudWatch Logs のログ本文をSlack通知(1) の続きです。 SNSを介さず、Lambdaから直接Slackへ投稿する方法です。 (2) Stream to AWS Lambda でSlack通知 CloudWatch Logs -> Lambda -> Slack CloudWatch Logs のサブスクリプションを使…

AWS Lambda で CloudWatch Logs のログ本文をSlack通知(1)

CloudWatch Logsを使用したログ監視です。 CloudWatch Logs のメトリックフィルタから Alarm を作成し、SNS メッセージをSlackへ投稿する Blueprint が提供されていますが、 通知されるメッセージだけでは Alarm が発生した事がわかるのみなので、ログ本文を…

Mackerel事始め ホストの退役

退役=Mackerel上からの削除です。 Web画面上での設定方法がパッと出なかったので流れを書いてみます。 何てことは無いのですが一覧から変更できるものと思っていたので少々彷徨いました。 Web画面からの退役設定 Hosts(ホスト一覧)画面で設定できるのは、Wo…

Mackerel事始め check-plugin プロセス監視

check-plugin を使ってプロセス監視を行います。 チェック監視項目を追加する - Mackerel ヘルプ プロセス監視をおこなう - Mackerel ヘルプ チェックプラグインの共通設定 notification_interval 再送間隔(分) 未指定=再送無し 最短30分(30分未満を設定し…

Mackerel事始め check-plugin ログ監視(動作確認)

check-plugin を使ってログ監視の色々を確認してみました。 初回登録時 対象ログファイルの先頭から読まれます。 大量通知を避けるため、一度コマンド実行でステートファイル作成後にconfファイル有効化を行った方が安全だと思います。 ログファイルのパーミ…

Mackerel事始め check-plugin ログ監視(基本設定)

check-plugin を使ってログ監視を試してみます。公式に詳しい説明があります。 ログ監視をおこなう - Mackerel ヘルプ check-log.conf 必須オプションは対象ファイルと検索文字列です。 [plugin.checks.test-log] command = "/usr/local/bin/check-log --fil…

Mackerel事始め agent-plugin ELB RDS

agent-pluginを使ってELB、RDSの監視設定を追加していきます。 IAM Policy mackerel-plugin-aws-elb は GetMetricStatistics に加え、ListMetrics も必要とのことです。 cloudwatch:GetMetricStatistics cloudwatch:ListMetrics CLI で IAM User 作成 専用の…

Mackerel事始め agent-plugin EC2関連

agent-pluginを使ってEC2関連の監視設定を追加していきます。 IAM Policy設定 CloudWatch経由の取得のため GetMetricStatistics を IAMrole または IAMuser へ付与します。 cloudwatch:GetMetricStatistics IAM role で設定されていれば access-key-id、secr…

Mackerel事始め agent-plugin Apache

agent-pluginを使ってミドルウェアの監視設定を追加していきます。 confファイルのinclude設定 mackerel-agent.conf のコメント解除や直接追記も可能ですが、 監視対象それぞれで設定ファイルを分けたいので、 include設定を追加します。 $ cd /etc/mackerel…

AWS RDS for PostgreSQL 拡張モニタリング

RDSの拡張モニタリング(Enhanced Monitoring)有効化組にPostgreSQLも仲間入りしたようです。 Enhanced Monitoring and option to enforce SSL connections is now available for Amazon RDS for PostgreSQL 日本語にはまだ反映されていませんが、公式ドキュ…

Mackerel事始め pluginインストール

Mackerel ヘルプ を読み進めながら実装中です。 Mackerel の agent をインストールしただけの状態では、OSの基本メトリクスの収集のみですが、pluginを導入することで追加メトリクスの収集が可能になります。 メトリック仕様 - Mackerel ヘルプ mackerel-age…

Mackerel事始め ダッシュボードのテンプレート的なMarkdown

Mackerel を触り始めたのでメモ。 Mackerel(マカレル): 新世代のサーバ管理・監視ツール では定義したサービス、ロール毎のグラフ表示が可能ですが、 標準機能だと切替表示のため一括で表示したい場合はカスタムダッシュボードを使用します。 Metricsを切…

AWS CloudWatchでIOPS確認

AWS

AWSのディスクにはIOPS(1秒あたりの入出力操作)制限があります。 I/O 特性 - Amazon Elastic Compute Cloud Amazon RDS のストレージ - Amazon Relational Database Service CloudWatchで確認する際EC2(EBS)とRDSでメトリクスの単位が異なるので注意が必要か…