2015/03/15

BIGMAMA / A KITE


BIGMAMAの新アルバムがいい。

良いアルバムは音楽を聴いていると時間感覚がなくなり、
スっと聞き終わり、何度も聴きたくなる。

ちょうど14日問こともあり、
メッセージサイトを作るときにどんな曲を贈ろうか考えていたら、
真っ先にこの曲が浮かんだ。

受けがいいかどうかは知らないが、この曲を送りたいと思った。

ラブソングと言ったらBIGMAMAでしょ!


A KITE - The Vanishing Bride

The Vanishing Bride (通常盤)
The Vanishing Bride (通常盤)
posted with amazlet at 15.03.15
BIGMAMA
RX-RECORDS/UK.PROJECT (2015-02-25)
売り上げランキング: 7,872

2015/03/14

起動サービスのロケーション設定の驚き


今までは問題なかったが、
OSを再起動してみらアプリの動作がおかしくなった!

どうやら原因はTomcatの環境変数に設定されているロケール情報が起動前と違っていることが原因。

なぜ~・・・

もちろんOSのロケール情報は日本語環境にしてあります。

# cat /etc/sysconfig/i18n
LANG="ja_JP.UTF-8"

# locale
LANG=ja_JP.UTF-8
LC_CTYPE="ja_JP.UTF-8"
LC_NUMERIC="ja_JP.UTF-8"
LC_TIME="ja_JP.UTF-8"
LC_COLLATE="ja_JP.UTF-8"
LC_MONETARY="ja_JP.UTF-8"
LC_MESSAGES="ja_JP.UTF-8"
LC_PAPER="ja_JP.UTF-8"
LC_NAME="ja_JP.UTF-8"
LC_ADDRESS="ja_JP.UTF-8"
LC_TELEPHONE="ja_JP.UTF-8"
LC_MEASUREMENT="ja_JP.UTF-8"
LC_IDENTIFICATION="ja_JP.UTF-8"
LC_ALL=

再起動してももちろん変更はされていませんね。
そういえば、プロセスの変数情報を確認できなたと思い確認してみると。

# cat /proc/{PID}/environ
TERM=linuxPATH=/sbin:/usr/sbin:/bin:/usr/binRUNLEVEL=3runlevel=3PWD=/LANGSH_SOURCED=1LANG=en_US.UTF-8PREVLEVEL=Nprevious=NCONSOLETYPE=vtSHLVL=2UPSTART_INSTANCE=UPSTART_EVENTS=runlevelUPSTART_JOB=rc_=/opt/app/tomcat6-ffc/bin/jsvcLD_LIBRARY_PATH=/opt/app/jre/lib/amd64/server:/opt/app/jre/lib/amd64

おやまぁ本当にLANGの値は"en_US.UTF-8"になっている。

いったいどこでこの値は設定されるのだろう?
Shellが起動された時、いろいろprofileやbashrcとかが呼び出されて環境を整えるのでそのあたりか。

# vim /etc/profile.d/lang.sh
~省略
    if [ -n "$LANG" ]; then
      case $LANG in
        *.utf8*|*.UTF-8*)
        if [ "$TERM" = "linux" ]; then
            if [ "$consoletype" = "vt" ]; then
                case $LANG in
                        ja*) LANG=en_US.UTF-8 ;;
                        ko*) LANG=en_US.UTF-8 ;;
                        si*) LANG=en_US.UTF-8 ;;
                        zh*) LANG=en_US.UTF-8 ;;
                        ar*) LANG=en_US.UTF-8 ;;
                        fa*) LANG=en_US.UTF-8 ;;
                        he*) LANG=en_US.UTF-8 ;;
                        en_IN*) ;;
                        *_IN*) LANG=en_US.UTF-8 ;;
                esac
            fi
        fi
profileの中を確認してみると、なにやらコンソールタイプ変数値によて設定するロケールの値を変えている
コンソールタイプ?

確かに再起動後のプロセス情報は"CONSOLETYPE=vt"となっている。

ここか・・・!

確かにSSH等のコンソールからサービスの再起動を行うと、
コンソールタイプは"CONSOLETYPE=pty"となり、日本語ロケールにもなり、コンソール関係の変数も読み込まれている。
細かいところまでは見ていないけれど、コンソールタイプでLANG関係の読み込みも分けている。

f [ -n "$LANG" ]; then
    saved_lang="$LANG"
    [ -f "$HOME/.i18n" ] && . "$HOME/.i18n" && sourced=1
    LANG="$saved_lang"
    unset saved_lang
else
    for langfile in /etc/sysconfig/i18n "$HOME/.i18n" ; do
        [ -f $langfile ] && . $langfile && sourced=1
    done
fi

今回問題になったTomcatはバイナリでサイトから落として利用している。
RPMでインストールするサービスはどうなのか知らないですが、
少なくともコンソールタイプで読み込まれる変数が変わるというのは初耳だった。

今回は起動スクリプトに明示的に"LANG=ja_JP.UTF-8"として問題を回避したが、
(そもそも)環境依存で作りアプリケーションに問題があるかどうかは置いといて。)
どうりでOS再起動時のログファイルは英語になっているわけだよ・・・。

OS依存によるアプリケーションやシステムの構築には気を付けよう!

そして必ずOS再起動でもシステムは問題なく動く事を確認しよう。


詳解 Tomcat
詳解 Tomcat
posted with amazlet at 15.03.14
藤野 圭一
オライリージャパン
売り上げランキング: 19,989

2015/03/01

The Mirraz @ 2014-15A/Wツアー~オポオポオポオポオポオポオポオポオポチュニティィィィィィィィィィィ!!!!~ 新木場STUDIO COAST


久々のミイラズ!

ニューアルバムのオポチュニティーが凄くいい。
シンプルでいて聞き飽きない。

だからからかこのツアーは凄く楽しみでした。
あいにくの台風か!というくらいの風と雨でしたが。
もう新木場STUDIO COASTなのに新人バンドか!みたいなライブの仕方か
ミイラズだなー相変わらず大きい会場がイメージできねーな(笑)という。

しょっぱなから最後まで飛ばしっぱなしのセットリストも、
ノリとレスポンスがいいライブ雰囲気も大好きです。
脳みそをすっからかんにしてくれます。

ただ、言いたいのは、新曲は微妙だと思いますよ。

01.オポチュニティレポート
02.スーパーフレア
03.最高の人生
04.観覧車に乗る君が夜景に照らされてるうちは
05.ふぁっきゅー
06.ミラーボールが回りだしたら
07.CANのジャケットのモンスターみたいのが現れて世界壊しちゃえばいい
08.ラストナンバー
09.レイトショーデートしよう
10.i luv 日常
11.ハッピーアイスクリーム
12.check it out! check it out! check it out! check it out!
13.真夏の屯田兵 ~yeah! yeah! yeah!~
14.世界一キレイなもの
15.僕はスーパーマン
16.気持ち悪りぃ
17.WAAAAAAAAAAAAAAA!!!!!!!!!!!!!!!!!!
18.SUSHI A GO! GO! GO!
19.アスファルテームの味がする
20.プロタゴニストの一日は
21.アンコール:
-------
22.この惑星のすべて
23.マジかーそうきたか、やっぱそうきますよね。はいはい、ですよね知ってます。
24.僕らは
25.O!M!G!!!


プロタゴニストの一日は - プロタゴニストの一日は - Single

OPPORTUNITY(初回限定盤)(DVD付)
The Mirraz
ユニバーサル ミュージック (2014-10-15)
売り上げランキング: 50,799