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

ようへいの日々精進XP

どげんもこげんも無かろうもん

(超メモ)Datadog の HTTP や TCP コネクションチェックのインターバル設定

tl;dr Datadog で HTTP や TCP のコネクションチェックを行うことが出来るけど、Agent Check が HTTP エンドポイントや TCP ポートへの接続を試行する間隔を指定出来ないのかなって調べたら、以下のように言及されていたので実際に調べてみた。 help.datadog…

Ruby の Hash キーへのアクセスで String と Symbol でどのくらいの差があるのか比較してみた

tl;dr Hash キーへのアクセスは String よりも Symbol の方が速いことがあるよというのを本で読んだけど、その速さの違いはどれくらいなのか、又、歴代の Ruby バージョンでどの位の違いがあるのかを比較することにしました。 既に 試されている方がいらっし…

スクショで振り返る Hosted InfluxDB 48 分チュートリアル(InfluxDB を触ってみたぜよ 2015)

tl;dr inokara.hateblo.jp こんなミーハー感満載の記事を書いて一年以上経過した今朝、以下のようなトゥイートに気づく。 Hosted InfluxDB plus @grafana! Spin up a single node in seconds and try it free for 14 days - http://t.co/b9TPMtcu8w pic.twit…

「PM2.5 in 九州」更新メモ(2015/09/24)

tl;dr 小さな更新だけどメモ。 更新内容 概要 JSON 出力を修正 1. JSON 出力を修正 各観測地点のデータを JSON っぽい出力で表示しているけど、より JSON っぽい出力にした。 以下のように表示される。 もちろん curl でも。 % curl -s "http://pm25.test.in…

「PM2.5 in 九州」更新メモ(2015/09/22)

tl;dr 先日作った、そらまめ君のデータを拝借させて作った可視化サイト(今後は「PM2.5 in 九州」という名前で暫定的に呼ぶ)を更新したのでメモ。 PM2.5 in 九州 / 2015-09-21 更新内容 概要 観測地点全ての情報が網羅されていなかった問題を一部解決 観測…

DynamoDB + Data Pipeline + S3 + Google Chart API を少しずつ使ってそらまめ君で提供されている大気中の汚染物質濃度速報データを可視化するサイトを作ってみた

以下、自分が今後メンテナンスする為にも必要なのでメモっておく。 tl;dr 今までの復習のつもりで DynamoDB + Datapipeline + S3 + Google Chart API を少しずつ使ってそらまめ君で提供されている大気中の汚染物質濃度速報データを可視化するサイトを作って…

ダイナミック!ダイナモー(DynamoDB tutorial)番外編 〜 Google Chart API でちょっとしたグラフを書いてみる 〜

tl;dr DynamoDB にデータを溜めているのなら、そのデータを可視化しなければ...と思ったけど、さくっとグラフ書けないかなと思ったら Google Chart API なるものがあるらしいので、その Ruby ラッパーである mattetti/googlecharts と合わせて利用させて頂き…

ダイナミック!ダイナモー(DynamoDB tutorial)vol.2 〜 JSON サポートの動作確認 〜

tl;dr aws.typepad.com JSONフォーマットのドキュメントをそのままDynamoDBの1アイテムとして保存できるようになりました(後述の新たなサイズ上限である400KB以内が条件) とのことなので JSON フォーマットをドキュメントとして登録してみる動作確認。 参…

ダイナミック!ダイナモー(DynamoDB tutorial)番外編 〜 Datapipeline を使って出来るだけ EC2 レスなデータ収集環境を作る 〜

いきなり番外編。 tl;dr そらまめ君のデータを定期的に集めて DynamoDB に投入する流れを作るにあたってどこかのサーバーを常時起動しておくのもなあということで Datapipeline の ShellCommandActivity を cron として利用してみた。 尚、Datapipeline の S…

alerty プラグイン三種盛り - いくつかの知見を添えて

tl;dr alerty という cron の失敗の結果を各種通知先にアラートを飛ばすツールを sonots さんが作られた。 blog.livedoor.jp このツールのイイなあと思うところの一つはプラグインによって通知先を増やせる点。また、README にも書かれているが、プラグイン…

無料枠でざっくり学ぶ Microsoft Azure その 1 ~ Blob ストレージと Azure SDK for Ruby 等 ~

無料枠が続く限り Microsoft Azure を弄ってみる。 Blob ストレージとは Microsoft Azure におけるストレージ ストレージの概要 | Microsoft Azureazure.microsoft.com 上記に詳しいことはおまかせして...以下の四種類に分類される。 Blob ストレージ テーブ…

VPC Flow Logs Tutorial(2) - CloudWatch Logs Subscriptions + KCL for Ruby + Datadog Event で Reject されたトラフィックの可視化 -

tl;dr 前回の続き。 VPC Flow Logs を CloudWatch Logs Subscriptions と Kinesis Client Library for Ruby アプリケーションを利用してトラフィックログから Action が REJECT なログを Datadog Evnet に通知して可視化してみる。 可視化してみるとゾッとす…

JMeter でシナリオを書く時に HTTP プロキシサーバを使えば少し捗るかもしれないメモ

台風直撃の朝。 tl;dl 先日立ち上げた Redmine 環境に対して JMeter で負荷テストを行う為のシナリオを作ってみようと思った 但し HTTP リクエストをポチポチ作るのは辛いと思ったら HTTP プロキシサーバ(HTTP(S) Test Script Recorder)という機能を利用す…

Datadog のコマンドライン API クライアントを試行錯誤で作っている

はじめに Ruby と Datadog の勉強を兼ねて Datadog の コマンドライン API クライアントを作っている。(※コマンドライン API クライアントという言葉があるかどうか怪しい。) inokappa/hachikogithub.com Hachiko の名前は忠犬ハチ公から名前を頂戴したm(_…

Datadog の Monitor 定義を Ruby DSL で管理する Barkdog を使ってみた

はじめに Datadog にはモニタリングしているメトリクスに対して、設定したしきい値で通知を飛ばす Monitor という機能が備わっている。 Datadog Docs - Monitor機能の設定ガイド この Monitor の設定は WebUI 又は提供される API 経由で設定を行うことが出来…

fluent-plugin-haproxy_stats というプラグインを作ってみた

HAProxy は自身の状態を Web ブラウザ又は UNIX ドメインソケット経由で確認することが出来る stats という機能を備えているが、UNIX ソケットドメイン経由で出力される状態を収集する fluentd の input プラグインを勉強がてら作ってみた。 inokappa/fluent…

fluent-plugin-datacounter を使って日本語を含んだログメッセージをカウントしたいと思った時に僕が選んだ苦肉の策

きっかけ 日本語を含んでいるログメッセージを fluent-plugin-datacounter でカウント出来ないかなって思ったので試行錯誤してみた。 参考 tagomoris/fluent-plugin-datacountergithub.com OSS編~Fluentdでexec_filterを試してみる~recipe.kc-cloud.jp で…

Ruby でワンライナー Web サーバーを起動する

参考 Ruby - ワンライナーWebサーバを集めてみた - Qiitaqiita.com ホントにワンライナー 起動 # 作業用のディレクトリ作成 mkdir ~/web cd ~/web # HTML ファイルを用意 touch test.html # ワンライナー Web サーバー起動 ruby -run -e httpd . -p 8000 & #…

jq を使わないで Python や Ruby だけで JSON から任意のキーの値を取り出す苦肉の策

jq のありがたみを感じる今日此の頃。 以下のような... test.json があるとする。(consul の service 情報を取得した際の出力結果) [ { "Address": "192.168.10.2", "Node": "node01", "ServiceID": "oreno-service", "ServiceName": "oreno-service", "Se…

dd-agent の DogStatsD 使ってカスタムメトリクスを Ruby を使った送るメモ

はじめに Datadog のエージェント(dd-agent)をインストールすると DogStatsD を利用出来るようになる(と言うよりも DogStatsD は dd-agent の構成要素の一つだと思っている)ので DogStatsD を Ruby からサンプル通りに使ってみた。 DogStatsD がナニモノ…

fluentd 復習(3)〜 HTTP API + Fluentd で始める RabbitMQ のリソースモニタリング 〜

ども、かっぱです。 sensu では RabbitMQ が重要な役割を担っているはずなんだけど内部情報とかよく解ってなくて本当に申し訳ございません。せめて内部リソースモニタリングしたいなって思っていたら RabbitMQ には HTTP API が提供されているのでコレと flu…

Ansible で Docker コンテナの Dynamic Inventory を試す

ども、かっぱです。前回の続き。 あくまでお試し Python 版の Inventory スクリプト ということで Ansible の Dynamic Inventory スクリプトの Docker コンテナ版を作ってみた。尚、Docker コンテナ版については Python 版が存在するが、consul 版と同様に手…

続々・sinatra を使って td-agent(fluentd) のバッファの状態をモニタリングするダッシュボードを作ってみた

はじめに 前回の記事を書いてから幾つかバージョンアップしてみたw 俺のダッシュボード 俺のダッシュボード 変更点 概要 デザインを変えてみた メトリクスグラフを modal 表示にしてみた 画面(overview) 画面(メトリクス) 以下のような HTML で実現して…

InfluxDB を Ruby から操作するチュートリアル

1500 万人の時系列データベースファンの皆様、おはようございます。かっぱです。 はじめに InfluxDB を Ruby 経由で使いたくなったのでメモ Grafana と連携が簡単なので合わせてメモ InfluxDB のうんちく うんちくよりも以下の参考サイト。 本家 InfluxDB を…

続・sinatra を使って td-agent(fluentd) のバッファの状態をモニタリングするダッシュボードを作ってみた

はじめに 以前に作ったきりですっかり放置状態だったが、放置するにもあまりにも恥ずかしい状態だったので出来る範囲で修正と機能追加をしてみた。 俺のダッシュボード 俺のダッシュボード 俺のフレンチとか俺のイタリアンとかにインスパイヤされた訳ではあ…

Focuslight と eye を試してみたメモ

Focuslight を試す + eye でプロセス監視してみる memo eye でプロセス監視するところは期待通りに動作させることが出来なかったけどとりあえずメモ。 Focuslight を試す + eye でプロセス監視してみる unicorn のプロセスは監視することができたんだけどな…

最近のほげふが

ほげふが serverspec メモ Serverspec メモ サーバーにログインしてバックアップの結果とか確認するのがかったるくなったので。あと、スポット的に監視とかにも使ってる。 RabbitMQ メモ RabbitMQ のクラスタ構成を体感する 近くに詳しい方が居るのはかなり…

2014/05/07 のほげふが、ほげふが

知ったかぶり infrataster を試してみた。 Infrataster を試す 本当に「試してみた」レベルで恐縮だが、従来は curl とかを駆使してやっていたことが汎用化し易い(と思っている)記法(RSpec)で書かれているので色々と広がりそうな予感。

sensu で docker コンテナの数をチェックするプラグインを作ってみた

はじめに せっかくなので sensu プラグインの勉強のつもりで Docker Remote API を使ってプラグインを作ってみた 参考 ryshinoz/rubocop_sample こんなの スクリプト こちら 目指したこと Docker Remote API を使う 起動中のコンテナの数をチェック しきい値…

sensu の Mutators をドキュメント通りに試した

どうもご無沙汰してます自称 sensu 芸人のかっぱです。 はじめに sensu の Mutators を試せていなかったのでまずはドキュメントを見よう見真似で試す Mutators とは? ざっくり言うと... 監視イベントをハンドラに渡す前にイベントデータに手を加える処理 イ…

今更だけど docker の Remote API を Ruby から使うなど(2)

はじめに 前回の続き バージョンはシステムの情報を取得する API を試す 試した環境は Amazone Linux 本当にメモ書き程度 参考 Docker Remote API v1.10 swipely/docker-api やってみる docker の稼働状況等を取得する。 docker のバージョンを取得する Show…

せっかくなので Dashing で docker の何か作ってみた

はじめに 前回の続き ホストで動いているコンテナの数とかを Dashing で見れるようにしてみた こんなん出来ました サンプルをそのまま利用したのでサンプル感が否めない。 スクリーンショット(1) スクリーンショット(2) 開発途上版w github https://git…

今更だけど docker の Remote API を Ruby から使うなど

はじめに 今更だけど... 以前に docker の Remote API を触ったことがあったが Ruby からも扱えるようなので試してみた 前回の記事でも Dashing から Remote API を使っている 参考 Docker Remote API v1.10 細かいことは置いといて 逆引き◯◯的な感じで。 ge…

docker で Dashing を触ってみた

日本全国 5000 万人の docker とダッシュボード愛好家の皆様、おはようございます。 参考 Dashing かっこいいダッシュボードが簡単に作れるDashingがすごい Dashingで簡単にダッシュボードを作る方法 セットアップ せっかくなので Dockerfile こちら ちょっ…

im.kayac で sensu の通知ハンドラを作ってみた

はじめに 単発で次から次へとすいません 今朝 im.kayac で遊んでいてその勢いで sensu の通知ハンドラを作った Ruby 新卒の自分でも出来ました 本家の Community Plugin にプルリクエストしてみたいけどやり方がイマイチわからん スクリーンショット 障害検…

im.kayac が面白い(sensu の通知ハンドラを作ってみる)

はじめに im.kayac で iPhone の push 通知を始めるまでの簡単な手順 ついでに sensu の通知プラグインも作ってみる 手順 こちらでアカウント作成 Apple Store でアプリをダウンロード アプリでログイン設定 コマンドラインから im.kayac.com に対してcurl …

sensu で Elasticsearch にイベントデータを放り込むハンドラスクリプトを書いた

はじめに handler の勉強を兼ねてイベントデータを Elasticserch に放り込むハンドラスクリプトを書いてみた 参考 sensu-community-plugins / handlers / notification / fluentd.rb コード github にアップした こちら 参考 @repeatedlyさんが作られたこち…

gistub を公開するのに docker 使ってみて Blue-Green Deployment をちょっと体感した

どうも、自称 docker 芸人の川原です。 はじめに gistub という gist の互換ツールをローカルな環境で公開することになったが、お試しでという要望だったのでローカル PC の docker コンテナに作った gistub 環境をそのまま公開してみて、ああ、これが Blue-…

mod_mruby でユーザーエージェントを判断してアクセス先を振り分けてみる(2)

引き続き 前回の記事を書いた後、速攻で @matsumotory さんからご連絡頂いた。ハヤっ! mod_mrubyのバグ(中で呼び出しているmrbgemのバグ)ですね。正規表現使えるように最新版で更新しておきました。 / “mod_mruby でユーザーエージェントを判断してアクセ…

mod_mruby でユーザーエージェントを判断してアクセス先を振り分けてみる

はじめに mod_mruby を動かせる環境が作れたのでユーザーエージェントを判断してアクセス先を振り分けてみる 参考 Apacheのmod_rewriteをmod_mrubyによって無くす事ができるか Apacheによるバーチャルホスト構築レシピ mod_mruby編 mruby から正規表現が消え…

mod_mruby と Apache が動く Dockerfile を作った(2)

そして追記 なんと mod_mruby のインストールドキュメントにも紹介して頂きました! mod_mrubyもngx_mrubyもDockerでbuildする方法を公開して下さったので、Installページに掲載しました。http://t.co/EszTx8MaUA http://t.co/xBaonCe3Nn thanks @inokara @h…

今更だけど capistrano と chef-solo を組み合わせて...シリーズのまとめ

はじめに 前回、前々回の記事で capistrano と Chef-Solo を組み合わせたのをきっかけに AWS SDK for Ruby を使って EC2 インスタンスに対応させたツール的な物を作ったり serverspec を個人的に拡張したりしながら色々と学ぶことが多かったので、ツールで出…

今更だけど capistrano と chef-solo を組み合わせて複数の EC2 インスタンスをセットアップして serverspec を使ってテストする

はじめに 前回 は EC2 上に capistrano と Chef-solo を使ってインスタンスをセットアップした セットアップしたインスタンスを serverspec を使って cookbook が正しく適用されているかを確認する EC2 の場合には動的な IP アドレス、ホスト名が適用される…

今更だけど capistrano と chef-solo を組み合わせて複数の EC2 インスタンスをセットアップする(1)

はじめに 前回に引き続き capistrano と chef-solo でシリーズ第二弾 せっかくなんで EC2 インスタンスもやってみた セットアップ後の確認には前回と同様に serverspec を使う とりあえずメモ こんな感じで 以下のような事を出来るようにした。 インスタンス…

sinatra を使って td-agent(fluentd) のバッファの状態をモニタリングするダッシュボードを作ってみた

はじめに ちゃんとモニタリングしたい場合にはこちらを使うと良いです! td-agent(fluentd) の内部情報を monitor_agent を有効にして収集するようにしてみた 複数のホストから収集出来る情報を一覧で見たいと思ったので ruby や sinatra 等の勉強も兼ねてダ…

kitchen-docker が動きました(2)

はじめに 先週から issue に質問したりしていてなんとなーく動いていた kitchen-docker がちゃんと動くようになって嬉しかったのでメモ。 経緯と敬意 詳細は issue に集約されている 自分のグダグダな英語に怒りもせず色々とアドバイスを下さった @portertec…

kitchen-docker が動きました

追記(2) 11/29 test-kitchen と kitchen-docker がバージョンアップされていました 動くようになりました!! 追記 11/26 に Docker 0.7 がリリースされたようです 残念ながら自分の環境では kitchen-docker は普通には動いてくれてません... はじめに tes…

gem 自身のアップデート

はじめに gem 自体のアップデートについて お作法 sudo gem install -v ${任意のバージョン} rubygems-update 無事にインストールが終わったら... sudo update_rubygems 最後に 本番環境とかでやるとナカナカドキドキします。

mod_mruby を試してみる

はじめに 先日参加した第2回 コンテナ型仮想化の情報交換会@東京の中で @matsumotory さんが紹介されていた mod_mruby を試してみたいと思う。 とりあえず試すという時には docker がとても便利だなーということで、こちらのコンテナイメージを使って試す。…

CoreOS を使って docker を体験した

概要 CoreOS を Vagrant で利用した CoreOS 内で docker を使って Ubuntu のイメージを作成した Ubuntu のイメージ内に Ruby 2.1-preview1 と fluentd をインストールしたイメージを作成した 作成したイメージを index.docker.io にコミットする(ところまで…