Stormのテストコード実行

テストの実行 Stormのビルドはmaven-clojure-pluginを利用して行われるようになったが、以下のように特定のユニットテストだけを実行することができない様子。 $ mvn test -Dtest=TestHoge REPLを開いてclojure.test/run-testを実行すると、特定のテストモジ…

HTraceによるHBaseのトレーシング

(この記事は、Hadoop Advent Calendar 2013の10日目の記事です) 並列分散処理の解析 HadoopやHBaseのような並列分散環境では、処理が多数のノードをまたがって実行されるために、トレーシングや性能のプロファイリングが難しくなります。各ノードで動作する…

Stormのソースコードを読むためのメモ

環境 GNU Global GNU GLOBALはソースコードタギングツール。Emacs/Vimと組み合わせて使う。対応しているプログラミング言語はC, C++, Yacc, Java, PHP4 and assemblyだけだが、タグテーブル作成にctagsを利用するモードを使うとかなりの言語をカバーできる。…

RabbitMQ tutorialsのErlangクライアントのサンプルコードを1行ずつ実行する

https://github.com/rabbitmq/rabbitmq-tutorials/tree/master/erlangにあるやり方で、Erlangクライアントのサンプルはすぐ動かせる。 $ git clone https://github.com/rabbitmq/rabbitmq-tutorials $ cd rabbitmq-tutorials/erlang $ wget http://www.rabbi…

RabbitMQの挙動の調べかた

Erlangのお勉強も兼ねて。まず、Erlangをインストールする。 $ sudo apt-get install erlangソースコードを読むとき用の仕込みとして、.emascに以下のような記述を追加する。 (setq load-path (cons "/usr/lib/erlang/lib/tools-2.6.7/emacs " load-path)) (…

PuppetのSSL関連のエラーについて

puppetをmaster/agent構成で利用していると、agentからmasterへの通信でSSLが使われるため、証明書関連のエラーではまりがち。証明書はmasterやegentを起動した際に自動的に作ってくれるし、master側がCAとして署名してくれるので設定自体の手間はないが、そ…

ClojureのREPLで動きを解析

バイナリでznodeに格納されているデータを読み出してみた場合の例。 $ cd storm $ lein repl user=> (use '(backtype.storm config)) nil user=> (use '(backtype.storm zookeeper)) nil user=> (import '(backtype.storm.utils Utils)) backtype.storm.util…

各種コマンド類でプロキシサーバを越えるための設定

Yum /etc/yum.confに以下のような内容を記述。:: proxy=http://proxy.example.com:8080 proxy_username=ユーザ名 proxy_password=パスワード wget /etc/wgetrcに以下を記述。:: http_proxy = http://proxy.example.com:8080 proxy_user = ユーザ名 proxy_pas…

プロキシサーバごしにコンソールを使う方法

Amazon Linux AMI 2012.03から起動したEC2インスタンスで試した。 anytermを利用してWebブラウザからターミナルにアクセスする 必要なパッケージのインストール。開発環境、boost、httpdとmod_sslが必要。 $ sudo yum groupinstall development $ sudo yum i…

ntpdが時刻同期できない原因をntpdcを利用して調べる

ntpdが起動している時に、ntpdcコマンドでshowpeerを実行すると、指定されたNTPサーバとのやりとりの状態についての情報が表示される。 # ntpdc -c 'showpeer ntp01.example.com' remote 192.168.1.2, local 192.168.1.27 hmode client, pmode unspec, strat…

gtagsでClojureのコードのタグ付け

Clojureで実装されたプロダクトは、ClojureだけではなくJavaのコードとセットになっていることが多いので、両方同時に見れるよう、gtagsを使うのがよさそう。まず、Exuberant Ctagsをインストールする。:: $ tar zxf ctags-5.8.tar.gz $ cd ctags-5.8 $ ./co…

swank-clojureのセットアップとデバッグ実行

Clojureの入門書を読んでいて、サンプルコードを理解のために動かして様子をみたかったので、試してみたときのメモ。leiningenはインストールしてある想定。:: $ wget -O ~/bin/lein http://github.com/technomancy/leiningen/raw/stable/bin/lein $ chmod a…