Wed Jul 02 16:40:56 JST 2014
ますますネットワークに繋がることが「当り前」になってきている。 ますますメモリを大量に搭載していることが「当り前」になってきている。
エンジニアは何をすべきなのだろうか。
Mon Jul 07 09:38:27 JST 2014
MH フォルダの mknmz の処理がコケてた。NMZ.lock2 ファイルが邪魔だよ、と言うので このロックファイルを消してリランしても、また同じく NMZ.lock2 ファイルが出来て死ぬ。
インデックスディレクトリに残留している *.tmp ファイルを消してやり直したら、 進んでいるようだ。しばらく放置する。
Mon Jul 07 09:54:17 JST 2014
それでも mknmz がエラーで止まってしまっていた。
Unterminated compressed integer in unpack at /usr/local/bin/mknmz line 2504.
軽くググった感じでは、インデクスが壊れているらしい。 さて困ったな。まとまった時間が欲しい。
Tue Jul 08 00:59:50 JST 2014
帰宅後に、インデクスディレクトリを新規に作成して mknmz なう。
255975 ファイルに対して、 40分で 61408 ファイル。約 25% ってところなので、 160分 = 2時間 40分 …長い…
Tue Jul 08 08:05:14 JST 2014
インデクス作成処理は、無事完了していました。
開始 Tue Jul 8 00:19:54 JST 2014 終了 Tue Jul 8 02:49:55 JST 2014
2時間半、ぴったり。旧ディレクトリから NMZ.slog を移植。
Tue Jul 08 21:33:25 JST 2014
ぼちぼち git やろう、ということで、すなわち ぼちぼち vim やろう、って感じ。 何しろ commit ログには日本語を書きたいじゃないですか。
:map ^K^U :set fileencoding=utf-8^M
これで C-k C-u でファイルを UTF として保存できるようになったので、 editor に設定する。
% git config --global core.editor vim % git config --global credential.helper cache
最後の credential.helper cache はおまけ。 初回の http 認証を しばらく 記憶しておいてくれるようになる。
Wed Jul 09 02:24:05 JST 2014
gitbucket の新しいのが出てたので、更新作業を行ってみた。 試行錯誤したけど、結論だけ書いておこう。
- tomcat 止める
- war 置く
- tomcat 上げる
以上だ。あれっ、こうやって書いてみると、異常に簡単だな…。 試行錯誤の部分も書いておこう。
- tomcat-users.xml には manager-gui と書く。manager っていう role は無い。
- manager で upload できる war サイズには制限がある。
- 環境変数 GITBUCKET_HOME 付きの起動スクリプトを作っておくといいね。
ほとんど tomcat メモじゃないか。
Thu Jul 10 02:33:04 JST 2014
うぉっ、、、いま一瞬バックライト切れた。やばい。寿命か。x61s。
Thu Jul 10 02:43:19 JST 2014
安室奈美恵さんの「Ballada」、dagrab で ripping したデータは 少々ノイズが乗ってしまっていたので cdparanoia で取り直し。
一般ユーザで作業するには xpt0 が触れる必要があるらしい、 ということで devfs に追記。
# vi /etc/devfs.conf perm cd0 0660 perm pass0 0660 perm xpt0 0660 # ls -l /dev/xpt0 crw------- 1 root operator 0, 95 Jul 10 01:50 /dev/xpt0 # /etc/rc.d/devfs restart # ls -l /dev/xpt0 crw-rw---- 1 root operator 0, 95 Jul 10 01:50 /dev/xpt0 #
っていう情報を探しながら今回は root で作業してしまったので、 実際に試すのは次回(笑
Thu Jul 10 21:39:52 JST 2014
cdparanoia で ripping したデータでも、ノイズが乗っていることがわかった。 違うドライブで ripping してみよう。
Thu Jul 10 21:58:49 JST 2014
ちょっと古い ports ツリーで jetty をインストールしたら
env - /usr/local/etc/rc.d/jetty.sh start
と出たのでその通りに打ったら無かった。 /usr/local/etc/rc.d/ に置いてあるのは jetty.sh じゃなくて jetty だった。
他にも、
cp /usr/local/jetty/etc/jetty.xml /usr/local/etc/jetty.xml
と出たので /usr/local/etc/jetty.xml を書き換えてみたのだが、 全く効果が無い。/usr/local/jetty/etc/jetty.xml を使ってる模様。
前者は ports ツリー上では修正されているようだが、後者は …結局誰の問題なのかよくわからない。あんま見る気もしない。 この手のプロダクトは ports で入れるのではなく野良インストールした方が良い感じである。
Sun Jul 13 00:34:30 JST 2014
sonarqube をお試しなう。 評価用で動かすまで。まず、 本家からダウンロードする。
てきとうなディレクトリに、ダウンロードした物体を展開する。一般ユーザでいいよ。
一般ユーザのまま、起動スクリプトを叩く。
% ./bin/linux-x86-32/sonar.sh start
もちろん我輩のマシンは linux じゃなくて FreeBSD なんだが、 そんなの関係ないらしい。動く。初回起動時はいろいろ環境設定が走るようで、 log/ 配下にできるログ (sonar.log) を tail -f していると面白い。
さて、起動すると 9000番で LISTEN する。 ブラウザでこいつにアクセスして、見えればOKだ。
デフォルトの H2 データベースは、評価用と位置付けられている。 画面下部に警告がうじゃうじゃ出て邪魔なので、PostgreSQL に切り替えることにする。
% ./bin/linux-x86-32/sonar.sh stop % su - pgsql $ psql postgres postgres=# CREATE USER sonar WITH PASSWORD 'sonar' postgres-# ; CREATE ROLE postgres=# CREATE DATABASE sonar WITH OWNER sonar ENCODING 'UTF8'; CREATE DATABASE postgres=# \q $ exit % vi conf/sonar.properties - sonar.jdbc.url=jdbc:h2:tcp://localhost:9092/sonar + #sonar.jdbc.url=jdbc:h2:tcp://localhost:9092/sonar - #sonar.jdbc.url=jdbc:postgresql://localhost/sonar + sonar.jdbc.url=jdbc:postgresql://localhost/sonar % ./bin/linux-x86-32/sonar.sh start
そて、これで見る側は出来たので、分析する側をやってみよう。 簡単な例として、ant でやってみる。 ant タスクも、本家のドキュメントサイトから落せる。 「Installing and Configuring SonarQube Ant Task」だ。 これを使うように、build.xml ファイルを書く。既存の build.xml とマージするのがダルかったので、ここでは sonar.xml として作った。
<?xml version="1.0" encoding="UTF-8"?> <project default="sonar" name="sampleproject" basedir="." xmlns:sonar="antlib:org.sonar.ant"> <property name="sonar.jdbc.url" value="jdbc:postgresql://localhost/sonar" /> <property name="sonar.jdbc.username" value="sonar" /> <property name="sonar.jdbc.password" value="sonar" /> <property name="sonar.projectKey" value="sampleproject" /> <property name="sonar.projectName" value="sampleproject" /> <property name="sonar.projectVersion" value="1.0.0" /> <property name="sonar.language" value="java" /> <property name="sonar.sources" value="src/main/java" /> <!-- property name="sonar.sourceEncoding" value="UTF-8" / --> <property name="sonar.sourceEncoding" value="MS932" /> <target name="sonar"> <taskdef uri="antlib:org.sonar.ant" resource="org/sonar/ant/antlib.xml"> <classpath path="buildlib/sonar-ant-task-2.2.jar" /> </taskdef> <sonar:sonar /> </target> </project>
そしたら、ビルドしよう。
% ant -f sonar.xml
ant のくせに(笑)、いろいろ頑張って $HOME/.sonar/cache/ を汚しつつ、 ビルドができる。そしたら、ブラウザでダッシュボードを確認しよう。
とりあえず、静的解析の結果が見える。ツールは何だろう。ルールの調整はどうしたらいいんだろう。 テストと組み合わせるにはどうしたらいいんだろう。
Sun Jul 13 01:50:22 JST 2014
テストと組み合わせるには、sonar.tests を書いておけばよいことがわかった。
んで、調子に乗って 例の 10000 オーバーclasses のプロジェクトの分析をしようとしたら、 死んだよ OutOfMemory で。export ANT_OPTS=-Xmx768m でリラン。
Sun Jul 13 03:40:22 JST 2014
decorate という処理の途中で死んだ。 2時間以上かかって死ぬとは。これ以上リランする気にはならない。
Thu Jul 24 19:25:12 JST 2014
dropbox uploader なるスクリプトを試してみた。
% dropbox_uploader.sh upload hogehoge.pdf tmp
bash スクリプトで、curl を使う。なかなか便利ですな。
HOME | index | prev | next