Vagrant環境にElasticsearchのCluster構成を作る

Vagrant環境に複数台VMを立ち上げて、ElasticsearchのCluster構成を作ってみたので、メモとして残しておく。 設定 Vagrantfileは以下。 VAGRANTFILE_API_VERSION = "2" Vagrant.configure(VAGRANTFILE_API_VERSION) do |config| # boxファイルは適当に用意す…

Fluentdのtypesオプションで型指定をする

Fluentdのin_tail機能を使っていると数値として扱ってほしいのに フィールドの値が文字列になってしまって、 fluent-plugin-typecastを使うことがあると思います。しかし、version 0.10.42以上のFluentdであれば、 in_tailにtypesオプションという型が指定で…

Upstartでプロセスが停止しない?

Upstartを使っていると停止させた時にプロセスが死なないことがあることに気づいた。 それは特定の条件、たぶん2回以上プロセスがforkされると、孫プロセスが死なないというものだ。 ※Linuxの正常な動作っぽいが。たとえば、 start on runlevel [2345] stop …

Upstartを使ってイベントに応じてジョブを起動/停止させてみる

SysVinitのようなinitデーモンの代替となるUpstart。 書いてみたら凄く簡単だった。 initデーモンのスクリプトは書くの面倒だもんね。。Upstartの基本的な書き方は、 ハートビーツさんの、「Upstart を使ってお手軽 daemon 化」の記事を参照するといい。 htt…

MongoDBユーザを作成するChefレシピ

MongoDBユーザを作成するレシピを書こうとしたら手こずった。 公式レシピではユーザを作成するようなリソースはないようだ。 なのでしょうがないくbashリソースを使って作成することにした。 それが以下だ。 bash 'create MongoDB user' do user 'vagrant' g…

Apacheをforegroundで動かす

foremanでApacheを起動しようと思ったらforegroundで動かさないといけない。 しかしapachectlのhelpページを見てもやり方が載っていない。 ググると以下のオプションでforegroundで起動できた。 apachectl -DFOREGROUND ちなみにnginxは nginx -g "daemon of…

rbenvクックブックでインストールしたRubyをRecipe内で使うには

Chefのrbenvクックブックを使うと簡単にRubyがインストールできます。 で困ったことが出てきて、Recipeのbashリソース内でrbenvでインストールしたRubyのバージョンのRubyを使おうとしたら Chef内のRuby(1.9.3)が使われて、おいおい…となったんですよ。 解決…

シェルスクリプトのタブ文字と変数展開

先日、シェルスクリプトの動作でハマったので書き留めておく。 やりたいのはこういうことだ。 log.txt aaa bbb cccddd eee fff ggg hhh こういうlogファイルがあり、「aaa bbb」と「eee fff」をgrepしたかった。 ちなみに、「aaa bbb」、「eee fff」、「ggg …

シェル上からSQLを実行して簡単に集計できるライブラリ「sssummary」を作った

シェル上からSQLを実行して簡単に集計できる「sssummary」というライブラリを作った。 rubygems -> https://rubygems.org/gems/sssummary github -> https://github.com/akira-kuriyama/sssummaryログファイルとかCSVとかTSVとか、フォーマットされたファイ…

iPod touchでモノラル出力ができることをさっき知った。

やり方は [設定]→[一般]→[アクセシビリティ]→[聴覚サポートのモノラルオーディオをオンにする] で出来る。 私は幼い頃にわずらった突発性難聴のため左耳が聞こえないので、 イヤホンでステレオ出力だと聞こえない音が出てくるのだ(それはそれで味があるのだ…

jQuery Plugin Registryへの登録の仕方

画像をルーレットさせるjQueryプラグインを作ったので、jQuery Plugin Registryへ登録してみた。roulette http://plugins.jquery.com/roulette/jQuery Plugin Registryの概要としては、 開発者が、作ったjQuery pluginをその開発者のgithubに置き、 post-rec…

ターミナルから素早くクリップボードに入れる

Mac

ターミナル上で作業していると、時々、 カレントディレクトリの絶対パスをコピーしたくなったり、 あるファイルを丸々コピーしたくなる。 (ここで言うコピーとはクリップボードに入れることを指す)そういう場合は pbcopy が便利。 pwd | pbcopy cat /etc/hos…

Redmineの担当者をグループごとに分けて選択できるプラグインを作った

Redmineで担当者が多いと選ぶのに時間がかかってイライラしますよね。 そこで担当者をグループごとに分けて選択できるプラグインを作りました。 https://github.com/akira-kuriyama/redmine_assign_groupingこんなに担当者が多くても こんな感じで担当者が属…

「Redmineのチケットの担当者を関係者のみに絞り込むプラグイン」を修正した

id:nazoking さんが作った「Redmineのチケットの担当者を関係者のみに絞り込むプラグイン」という素敵なRedmineプラグインがあるのですが、 それをRedmine2.1対応しました。 https://github.com/akira-kuriyama/redmine_assign_narrowdown 「Redmineのチケッ…

しばらく入力しないとイベントが発生するようにする

テキストボックスで文字を入力したらイベントを発生させたい。 でもキーと押すたびにイベントを発生するのはコストがかかるので嫌だ(例えばAjaxリクエストをなげているとかで)。 そういう場合は、文字を入力してから一定時間文字の入力がなければイベントを…

映画「おおかみこどもの雨と雪」を観てきた

周りの評判がよかったので、観てきました。 (ネタバレが入っているので観てない人は読まない方がよいです)感想としては。映画というより絵本に近い感じでした。 とある人が、「これは面白いから観てではなく、物語だから観て」と言ってましたがその通りだと…

北海道旅行に行ってきた

2012/04/21のPHPカンファレンスのために、有給をとって2泊3日の北海道旅行に繰り出すことにした。札幌には4年前に2ヶ月の出張で行ったことがあるので、ちょっと懐かしい。札幌についたのは14時頃で、お昼を食べてなかったので、 ぶあいそ という博多料理屋に…

MacでVimProcの更新をする

いつの間にかVimProcを更新しないと、 @ShougoMatsu さんが作ってくださっているVimプラグインたちがうまく動かなくなっていたので、 更新しました。MacでのVimProcの更新の仕方。 $ cd ~/.vim/bundle/vimproc $ git pull $ rm autoload/proc.so $ make -f m…

マネーCalcを公開停止しました

Androidアプリ「マネーCalc」という家計簿アプリを公開していたのですが、 この度、公開停止にしました。理由は、 ・アプリの更新が億劫になったため ・制作当初設けようとしていた機能は作ってしまったため ・Android3.0や4.0だととある処理をするとエラー…

VMwareのネットワーク設定をする

さて、前回VMwareのインストールをしたので、ネットワーク設定をしていく。VMwareのネットワーク設定はいつも忘れてしまうので、ちゃんと書き残していこう。 まず接続の種類。 NAT接続と、ブリッジ接続と、ホストオンリー接続がある。 それぞれの特徴は以下…

VMware ServerをWindows7にインストールする

VMware Server をインストールして、 起動させてみると、 ブラウザ上に、「VMware Infrastructure Web Access」が立ち上がった。 で、ユーザ名と、パスワードを聞かれるんだけど、これはWindowsのユーザ名とパスワードを入れるらしい。 しかし、間違っていな…

node.jsとsocket.ioでリアルタイムチャットシステムを作る 〜実装編〜

さて、前回でインストールが完了しましたので、 実際にプログラムをしていきます。まず、前回、chatroomという名前のプロジェクトのひな形を作成したので、 それを起動してみましょう。 $ cd chatroom $ node app.js Express server listening on port 3000 …

node.jsとsocket.ioでリアルタイムチャットシステムを作る 〜インストール編〜

node.js + express + jade + Stylus + socket.io + Bootstrap でリアルタイムチャットシステムを作ってみたのでそのメモ。 ※間違っていたらすみませんがご指摘お願いしますm(__)m まず使ったフレームワークの紹介。 node.js JavaScriptをサーバーサイドアプ…

僕たちプログラマーは、ちょっとしたコード生成に、AWKを使います!

AWK

元ネタ⇒ Excelを使った高速HTML生成ということで、愛すべきAWKでやってみましょう。↑のように必要な範囲を切り取って、おもむろにテキストに貼り付けます。 で、そのテキストファイルを(bokutati.txtで)保存します。bokutati.txt 横浜みなと博物館 神奈川県…

開発におけるチーム分けが裏目に出るとき

長く続くプロダクト開発もしくはサービスの開発になると、 よく会社のなかでチーム分けが発生する。 例えば、「開発チーム」、「SEO対策チーム」、「デザインチーム」、「カスタマーサポートチーム」等々。 これらは各々の問題に対する対処をそれぞれのチー…

Eclipse Xtendを試す

※結構間違っているかもしれません。。その際はご指摘をお願いします。新しい言語が登場しました。 その名も「Xtend」 http://www.eclipse.org/Xtext/xtend/特徴としては以下が上げられます。多分。 ・Eclipse foundation が作った言語 ・コードをJavaファイ…

転職後の感想

10月1日に、5年弱居た会社を辞めて新しい会社に転職しました。 転職活動の顛末は↓ http://d.hatena.ne.jp/shepherdMaster/20110923/1316804164で、転職後の感想です。転職先の会社は素晴らしいです。 上の記事にも書きましたが、今の会社を選択することはち…

MacのVoiceOver機能を切る

Mac

Macを使っていて、一番イラッとし、ビクッとするのは、 VoiceOver機能がオンになったときでしょう。 いきなり、ゆっくりの声(違うけどw)でしゃべり始めるのでかなりストレスがたまります。 ということで、 VoiceOver機能を切ります。 Macのシステム環境設定…

MacとEclipse PDTでPHPをデバッグする

やっとxdebugの使い方とブレークポイントの使い方、設定の仕方が分かったのでメモ。 まず、xdebugをインストールする pecl install xdebug peclはMacPortsでPHPをインストールしたなら、/opt/local/libexec/php/bin/pecl にあるはず。 つぎにPHP.iniの設定 x…

mod_rewriteのログを出力する

mod_rewriteを使っていると、rewriteされているのかどうか分からなくなったりします。 そういう時は、ログ出力をしてみます。以下の設定をhttpd.confに記述し、apacheの再起動をすればOK。 RewriteLog tmp/rewrite.log RewriteLogLevel 9