月別アーカイブ: 2013年11月

リサーチアルチザンライトの管理画面でエラーがでるときの対処法

リサーチアルチザンライトは自分のサーバーに設置できる、オープンソースのアクセス解析ツール。

Google Analyticsも使っているが、リアルタイムで出ないのと機能が多すぎてわかりにくい。

Googleプロダクトは直感的に使えないものが多いと思う。あ、私にとってはね。

その点、リサーチアルチザンライトはリアルタイムでわかり、直感的で使いやすい。

そのリサーチアルチザンライト、昨日、管理画面で次のようなエラーが出て動かなくなった

It is not safe to rely on the system’s timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected ‘Asia/Tokyo’ for ‘JST/9.0/no DST’ instead

phpのバージョンを5.2から5.3に挙げたのが原因だとはすぐにわかった。

ところが私は英語が苦手。

よく読みもせず、リサーチアルチザンライトは5.3に対応していないのだと勘違い。

代わりのアクセス解析を片っ端から試す羽目になった。

4時間探しても、リサーチアルチザンライトほどのものは見つからず。

ここでようやくエラーメッセージを読む気になった。

すると、「システム設定のdate.timezoneか、date_default_timezone_set()関数でタイムゾーンを指定しろ。お前のだとアジア東京がいいじゃないか?」と言っているようだ。

そこで、php.ini にdate.timezone =  Asia/Tokyoを追加。

何事もなく、リサーチアルチザンライトの管理画面を立ち上がった。

4時間ムダにしたとも言えるが得たものもある。

それはリサーチアルチザンライトは私にとってはベストな選択だと言うこと。

良いアクセス解析をお探しの方はリサーチアルチザンライトを試してみては?

20%速くなりました

TREMatchEngine.MatchPrim を TREMatchEngine.MatchCore に統合する作業を完了しました。

現在のバージョンでは要素ごとに MacthcPrim メソッドを呼び出しています。

ココが SkRegExp のボトルネックでは?

と言うわけで、 MatchPrim を MatchCore の中に押し込んだバージョンを作りました。

その結果は?

この変更だけで20%速くなりました。

やっぱり、ループ中のメソッド呼び出しは重いんですね。

近いうちに version 3.1 として公開します。

SkRegExp version 3.0.3 公開

SkRegExp version 3.0.3 を公開しました。

次のバグを修正しました。

  • 修正)戻り読みの中で選択(|)を使った正規表現パターンで Access violation が出るバグを修正。
    TRETrieList.Add 内のハッシュテーブルでキーが重複したときの処理が間違っていた。
  • 修正)戻り読みの中で選択(|)を使った正規表現パターンでマッチしないことがあるバグを修正。

    最適化すべきでない部分を最適化していたため。

  • 修正)選択(|)の際、最適化が効かなくなるバグを修正。
    TRENFA.GenerateStaeteList メソッドでリテラル文字の開始位置を正しく計算していなかった。

SkRegExp version 3.0.3 はこちらからダウンロードできます。