カイワレの大冒険 Third

技術的なことや他愛もないことをたまに書いてます

YAML.dumpするときは、文字コードを意識しとくべきだった件

なんかハマったので。環境はRuby1.9.3です。 YAML.dumpで出力しようとしたときに、必ずしも人間にわかりやすい形で出力してくれるとは限らないんですな。 とりあえず、ファイルに出力してみる場合。 >>> content = 'hello, world!!' >>> hash_test = {'key' …

concatメソッドにハマった件

またもやRubyネタですが、とあるリストの各要素同じ文字列追記をしたかったのですが、そしたら見事ハマったので書いておきます。 やりたいことはこんな感じ。 とあるリストがある。要素数は3にしておきます。 その各要素に対して、文字列を末尾に加えたい。 …

アクセスログをスマート解析してくれる「request-log-analyzer」が超絶便利だった件

最近、Ruby率が高くなってきた@masudaKです。 ちょいとアクセスログを眺める機会があったのですが、ワンライナーも限界があるし、なんかいいプラグインでもあるんじゃないかと探したら、良さそうなのがあったので、紹介。 その名も「request-log-analyzer」…

blog移転のお知らせ

もう半月ぐらい経ってしまいましたが、blog移転しました。移転先は以下。http://www.masudak.net移転先に記事はエクスポートしてますので、移転先を参照頂ければと。 今後共宜しくお願い致します。

Rubyで動的にメソッドを呼び出したいときの試行錯誤メモ

最近、昔のドラゴンボール劇場版を見て、90年代を懐かしんでる@masudaKです。 今回は、Rubyで条件分岐からファクトリ作成に至るまでの試行錯誤をちょいと晒してみたいと思います。 思考の流れはこんな感じ。 ある文字列が複数個リストに入ってる。 その文字…

ログ解析ツール「Splunk」を使ってみた

先日、qpstudyに参加してきた@masudaKです。@ar1さんと話しながら、荒木さんがLTでお話されたログの話をブログにあげたら、 僕も書きます−と言ってしまったので、ちょいと書いてみます。 荒木さんの記事・発表ではSumoLogic中心に書かれてましたので、Splunk…

qpstudy3周年記念LT大会

先週土曜日に『qpstudy3周年記念LT大会 〜新人さん、業界にようこそ!〜 with ビール』に参加して、LTしてきました。 発表資料は以下。 破壊 from Kenichi Masuda 大した深い内容もなく申し訳ないですが、新人さん向けということで、触って壊すことだってあ…

Chefのテストスイーツを色々試してみた (2)foodcritic, flay, reek, cucumberによるコード整備。

寒いの苦手なので早く温かい季節が来てほしいですが、花粉が怖くて、はざまの心境で揺れている@masudaKです。 前回の記事では、Chefのテストツールを紹介してみました。気楽にテスト。んで、テストは書くようになったものの、相変わらず自己流だったりするわ…

Chefのテストスイーツを色々試してみた (1)chefspec, minitestなどによるテスト整備

エンジニアのみなさま、自動化は進めていますでしょうか。海外ドラマにハマってる@masudaKです。すたじおなんとかさんが、以下のようなことを仰ってまして、. @kenjiskywalker さんとか @nakashii_ さんとか@mikeda さんとか@masudaK さんとかはユーザローカ…

#qpstudyに参加してきた

2013年01月26日に開催された「qpstudy 2013.01 DevOpsをぶち壊せ 〜DevOps言うな〜」に参加してきました。元々、運営側のスタッフが足りなそうとのことで、お手伝いをやってた次第です。勉強会の詳細はtogetterを見ていただくのがよいでしょう。手伝いが終わ…

Vimの環境を晒してみる(2013)

あっという間に三が日も終わろうとし、時の切なさを感じている@masudaKです。そこまで目新しいネタもないため、自分のVimの環境を晒してみたいと思います。この記事はVim Advent Calendar 2013の1月3日分の記事となります。説明は以下の.vimrcがベースとなる…

2013年の抱負

あっという間に終わった2012年、そしてもう始まった2013年、どのように過ごしていくか見直しの意味の含めて、簡単にライフログっておこうと思います。 仕事・アウトプット(2012) 2011年12月に転職をし、2012年は今の会社で大きなプロジェクトをがっつりやっ…

Javaウェブオペレーションエンジニアがトラブル切りわけ時に見ていること3つ

忘年会シーズンで肝臓への負担を極力避けている@masudaKです。今回はJavaアプリケーションの運用のポイントに関して、書いてみたいと思います。 このエントリはJava Advent Calendar 2012の22日目のエントリです。 Javaアプリケーションの運用ポイントとは …

zshの自動補完とその例としてのIPアドレス/hostname補完

引越しも終わり、少しずつ落ち着いてきた@masudaKです。今日は、zshという究極のシェルについて、簡単に至極簡単に述べてみたいと思います。zshに関して何がすごいのかを知りたい場合は後藤さんの記事をひと通り読むのがよいでしょう。24回までありますので…

InnoDBのINFORMATION_SCHEMA TABLES Tableと実データのレコード数比率を出してみた

キャラメルコーンは一人で食うにはやはり一袋でかいなと痛感している@masudaKです。information_schema.TABLESのデータどれくらい使えるだろうなと思い、簡単にデータ取ってみたので、その感想をば。 使ったMySQLのバージョンは5.5.24でございます。「MySQL …

社会人生活3年目の自分に向けて

職場でバランスボールでボヨンボヨンしている@masudaKです(先日盛大にズッコケました)。というのはさておき、社会に出てから2年という月日が過ぎまして、3年目に入りました。学生時代も「社会」と接点が無かったかというとそういうわけではなく、声をかけ…

定期実行スクリプトの綺麗なロギング3選

オリンピックの流れに乗れてない@masudaKです。職業柄かちょくちょくスクリプトを書くことはあるのですが、やはり色々自分で書いたり人のを見たりしてるうちに、この実行履歴綺麗だなーと思うことが多々あります。今回は、そう思える対象のなかでも、「定期…

勉強会開催のお手伝いをした際に、確認した事項と足りなかった事項

しばらく経ってしまいましたが、6/15にMonitoring Casual Talk #1が開かれました。その際、会場を提供する側を初めてやってみたので、その振り返りをば。 事前準備 今回、社内のセミナールームを使って、会場開放という形にしたわけですが、そんなこと一切や…

paramikoモジュールが激しく便利だった件

最近Pythonあまり書いてなくて、復習がてら書いてみたのですが、その際paramiko: ssh2 protocol for pythonが便利だったので、ご紹介。リモートホストに対してなんらかの処理を行いたい場合、スクリプトで書くとなると、シェルスクリプトでもできますが、例…

findコマンド使うときは、「prune」オプションを意識することが大事だという話し

findコマンドってすごく便利でxargsとかexecと合わせると色々できちゃうんですが、その分リスクも背負うので、リスクヘッジしておきましょうというお話し。あるディレクトリ配下にこんなファイルがあったとします(適当でごめんなさい)。 # lla drwxr-xr-x …

grepコマンドの便利なオプションたち

ログを見たり、何かあった際によくお世話になるgrepコマンドですが、このコマンドも色々便利なオプションがあるので、書いてみたいと思います。内容としては、curlコマンドの便利なオプションたち - カイワレの大冒険 Thirdの続編みたいなものです。 普通に…

curlコマンドの便利なオプションたち

curlコマンドのお話し。cURLって書くんですな。対向のサーバとのやり取りを追いたいときに、通信内容を見たいわけですが、そういうときにcurlコマンドはちょくちょく便利なので、書いてみる。要はtcpdumpとか使ってパケットまで見る必要はないんだけど、レス…

プロセスの現在の状況を追うためにstraceを使ったという話し

なんかyumでパッケージ入れていたら、インストール途中で進まなくなってしまい、ニッチモサッチモいかなかったので、strace使ったという話し。とりあえず備忘録。httpdでもなんでもいいのですが、yum経由でパッケージを入れようとする。そんな日の出来事。通…

MySQL Casual Talks Vol.3でLTしてきました

最近gdbにはまっている@masudaKです。4/19日にMySQL Casual Talksの第三回が開かれ、ありたがいことに声をかけて頂き、LTまでしてきました。当日のまとめは以下に。 MySQL Casual Talks Vol.3やりました 「MySQL Casual Talks vol.3」に参加してきたよ、のメ…

Chefサーバを動かすまでの方法をまとめてみた(自動化のススメ)

最近クラッシャーと呼ばれている@masudaKです。エンジニアのための時間管理術、自動化に関するまとめ - Glide Noteでも述べられているように【自動化】には「スケーラビリティ」や「ミスの可能性を排除」含め多くのメリットがありますが、そのなかでもちょく…

Vimperator覚書

楽シリーズ第二弾。完全に自分用の覚書ですが。。。Firefoxを使う際は基本Vimperatorで色々やるのですが、コマンド忘れるので覚書。 j: 下に行く k: 上に行く G: 一番下に行く gg: 一番上に行く d: タブを閉じるVim毎日触れてれば、ここら辺の移動系は普通に…

tuningathon 3に参加してきた

来たる3/24土曜、第3弾!いろいろチューニングしてパフォーマンスを競うバトルイベント「チューニンガソン」3月24日(土) 開催! #tuningathon on Zusaarということで、第2回に続き今回も行ってきました。受付済まして、もらったのは自分のIDとともに書かれた…

「シェルスクリプトを書く際に気を付けていること8箇条」の補足を書いた

前回のエントリで色々コメント頂いたので、自分の勉強のためにちょいと調べてみた。コメントありがとうございます。とりあえず、bashオンリーのもの途中から書いてるじゃんという話し。 ひとまず、提示したソースをそのまま使ってみて、やってみた。 declare…

シェルスクリプトを書く際に気を付けていること8箇条

エンジニアという職業柄かシェルスクリプトを書くことはちょくちょくあるのですが、自分なりに気を付けていることを備忘録&自分への戒めも含めて、簡単に書いてみたいと思います。 変数は大文字 シェルスクリプト書いていれば変数の出番は至るところである…

#infrapp2012 の資料を誰でも編集できるようにしました

先日行われた #infrapp2012 。前回の記事でも書いたように、うちのチームがお題にしたのは「PHPの一般的なアプリケーションのチューニングチュートリアル」でした。 題材としてWordpressを使ってはいますが、極力Wordpressに特化したアプローチはよりも、ど…