tokuhirom's blog Search
  • circleci_ikachan を書いた
    circle ci の webhook を受け取って、ikachan に forward するやつです。 ちょっと必要だったので書きました。 今回は、go で書いてみました。
    2016-06-24(Fri)
  • Promgen talk - Prometheus casual talks
    I promoted promgen, a prometheus configuration management console web app at Prometheus Casual Talks
    2016-06-17(Fri)
  • How do I display custom element with IncrementalDOM?
    Incremental DOM is great library to build dynamic DOM tree. If you want to build DOM tree contains
    2016-06-14(Tue)
  • x-tag で delegate しているときに root element を取得する方法
    ``` xtag.register('x-foo', { content: '<input /><span></span>', events: { focus: function(
    2016-06-06(Mon)
  • spring-data-elasticsearch について
    ES 2 が出てから半年以上経過しているにもかかわらず 2 対応がされていない。 クエリをすべてラップしているために 2 対応がなかなか難しいのだと思う。 Elasticsearch の場合、
    2016-06-03(Fri)
  • [prometheus][java] Added Spring Boot Metrics integration to Prometheus' simpleclient_java
    I sent p-r for client_java repository ... I want to export spring boot metrics to simpleclient_ser
    2016-05-26(Thu)
  • [golang] json_path_scanner 書いた
    JSON を読み取ったデータ構造を食わせると、「JSON Path」と「値」のペアのリストを得られるというやつ。 すでにありそうだったけど見当たらなかったので書いた。
    2016-05-22(Sun)
  • [prometheus] apache_exporter なおした
    Prometheus で apache を監視するための agent として apache_exporter があるが、これが全く動いてなかったので、動くようになおしておきました。
    2016-05-18(Wed)
  • [ruby] 10s 10m みたいな文字列から秒数を求めるには chronic_duration を使う
    なにかの実行間隔のような設定がある場合、chronic_duration を利用してパースすることができる。 実行例は以下の通り。integer をそのまま渡すとエラーになるので、integer
    2016-05-17(Tue)
  • sequel の migration に関するメモ
    Sequel には migration 機能がついている。これを利用するには以下のようなファイルを作成する。 ``` Sequel.migration do change do crea
    2016-05-15(Sun)
  • 個人的な grafana に対する不満トップ3
    # Editable をオフにすると戻せない > You can make it editable again using the Save As... feature and enter the
    2016-05-10(Tue)
  • CPU の system が妙に高いぞって時に犯人さがすには pidstat 使えば良い。
    `pidstat -h -u | sort -nr -k 5,5 | head` すれば良い。 `sudo yum install -y sysstat` してインストール。 簡単に誰が syst
    2016-05-10(Tue)
  • blog のバグを直した
    ブログシステムをうっかり書き直したらちょっとバグってたので直した。 * ctime/mtime を timestamp で保持していたが git なので保持されてなくて死んでたのでファイルの中に c
    2016-05-09(Mon)
  • [java][linux] Java の各プロセスのスレッド数を得るワンライナー
    ``` jps -l | ruby -ne 'pid, cmd = $_.chomp.split(/ /); puts pid + "\t" + File.read("/proc/#{pid}/sta
    2016-05-09(Mon)
  • javaagent として動く java のサンプラを書いた
    java アプリケーションのサンプリングを簡単にやるための簡単なライブラリを書いた。javaagent の習作的なやつです。 たんに、定期的に `Thread.getAllStackTraces
    2016-05-09(Mon)
  • [docker] alpine linux を使うなら gosu じゃなくて su-exec で良い
    gosu という setuidgid みたいなツールがあるが、よく README を読むと When using Alpine, it's probably also worth check
    2016-05-08(Sun)
  • Java mixed-mode flame graphsについてのメモ
    Java mixed-mode flame graphsについてのメモ
    2016-05-08(Sun)
  • gradle が混乱したときにとにかく念入りにキャッシュ消したい時にうつコマンド
    gradle を使っている時に、変なライブラリを依存に加えた結果、依存関係が混乱し、どうにもならなくなるときがある。 そんな時は設定を戻してから以下のように打てば、とにかくキャッシュは消えて、とりあえ
    2016-05-02(Mon)
  • Freemarker でテンプレート書くときに、Freemarker tag っぽいのを出力したい
    `${r"${person.name}"}` で OK. see. r"" は python と同じく raw string を表す。
    2016-05-02(Mon)
  • Spring Boot とファイルアップロード
    File upload のサンプルがこれ。 このへんによると、 ``` multipart.location specifies the directory where files will
    2016-05-02(Mon)
  • gradle で maven central にリリースできた。
    こちらを参考にしてやったら簡単にできた。 tagomoirs++ ``` // releng: gradle clean && gradle uploadArchives -Prelease
    2016-05-02(Mon)
  • Spring の ConfigurationProperties を kotlin で使う
    以下のように、`open class` にすれば良いらしい。kotlin のクラスはデフォルトで final 指定がつくので、open 指定しないとダメな様子。 ``` @Configuration
    2016-05-02(Mon)
  • fluentd を手元で動かしてデバッグしたいとき
    以下のようにして fluentd をインストール。 gem install fluentd --no-ri --no-rdoc /etc/fluent/fluent.conf に以下のよう
    2016-05-02(Mon)
  • [spring] spring mvc で、一部のコントローラは先に処理させたい時のライフハック
    /{user_id} はエンドユーザーのページだけど、 /entrylist は entry の list が出る、みたいな、ちょっと アレな URL 設計になってしまったサイトを spring m
    2016-05-02(Mon)
  • Spring の Freemarker で参照可能な変数について
    Spring で freemarker を利用している場合、いくつかの変数がデフォルトで利用可能になっている。 ``` protected SimpleHash buildTemplateMode
    2016-05-02(Mon)
  • spring で controller 書くほどでもないんだけどテンプレートエンジンでレンダリングして欲しい時のやり方
    addViewControllers ッテの使うと良いっぽい。 ``` @Configuration @Slf4j public class WebConfig extends WebMvcConf
    2016-05-02(Mon)
  • oh-my-zsh やめて zplug にしようかと思ったけどやっぱり zgen にした
    mput さんの記事→  を見て、zplug というものの存在を知った。 zplug を設定しようと思ったが、そもそも zsh の設定をこまごまとやるのがあんま好きじゃないし、コマンドのインストール
    2016-05-02(Mon)
  • spring boot アプリケーションのMetrics値取得について
    # Spring boot の metrics 機能について spring boot には metrics 機能が標準でついている。metrics では Counter と Gauge の2種類のメ
    2016-05-02(Mon)
  • jspm で angular2 を使ってみる。
    jspm+systemjs を angular2 では推してるっぽいし使ってみるかとおもって使ってみるとなかなか一筋縄ではいかない。 ベータ! という感じがしてよい。 そういうわけで、jspm+sy
    2016-05-02(Mon)
  • How do I set TemplateExceptionHandler with spring-boot+freemarker?
    You should use one of following properties. -Dspring.freemarker.template_exception_handler=reth
    2016-05-02(Mon)
  • dropwizard metrics servlet で spring-boot app のメトリクスをいい感じに取得する
    spring-boot の MetricsFilter はしょぼい。ステータスコードごとのリクエスト数のカウンタと、最後にアクセスされたリクエストの処理時間ぐらいしか取得できない。 これは不便。Dr
    2016-05-02(Mon)
  • aspectj の post compile weaving を gradle で行う方法
    spring boot の起動が極めて遅くて辛いなと感じていたところ、どうやら spring aop が極めて多くの時間を浪費しているということが判明した。 spring aop をオフにすると起動時
    2016-05-02(Mon)
  • spring-boot のメトリクスデータを graphite に送る
    spring-boot のメトリクスデータを graphite に送る
    2016-05-02(Mon)
  • rxjava で peek() みたいなことしたい
    java8 stream api でいうところの peek をするには doOnNext を利用すればよい。
    2016-05-02(Mon)
  • Alfred のワークフローを Perl で書きたい!
    なんか Alfred2 を久々に使い始めている。 最近は IDE で生活する時間が長いので、terminal を開いてそこから peco を開いてみたいなことをするよりは、Alfred2 からサ
    2016-05-02(Mon)
  • ansistrano について
    Ansible 上で capistrano 的にデプロイできるようにするというプロジェクトがある。 これは一見良さそうだが、設定を真面目にやっていくと、同等のことを自分で手で書くのと同程度に大量の
    2016-05-02(Mon)
  • 【解決済み】jackson 2.7 以後は @ConstructorProperties を参照するようになっているので、lombok を使っている場合に何も考えずにアップグレードすると死ぬ
    Jackson 2.7 がリリースされていますが、このバージョンから @ConstructorProperties を参照するようになっています。 See * * @java.beans
    2016-05-02(Mon)
  • spring mvc の interceptor のパスマッチャのやつ
    Spring mvc の interceptor ってやつ。hook みたいなやつ。以下のようなパスの設定ができる。 excludePathPatterns の設定だけだと動かないとかいう説もあって、
    2016-02-06(Sat)
  • Harriet 0.05 released.
    shipped.
    2016-02-06(Sat)
  • Spring Boot で redirect: とかなってるやつを自分で拡張したい
    通常の Spring Boot では `redirect:/` とか書くと、Moved Temporaly になるけど Moved Permanently 返したいときがある。 そんなとき、以下のよ
    2016-02-06(Sat)
  • spring boot でテスト書いてたら 403 になって、csrf filter に引っかかってるぽくていらっとしたときの対策
    ``` @Before public void setUp() throws Exception { mockMvc = MockMvcBuilders .webApp
    2016-02-06(Sat)
  • spring の MockMVC で通信結果をダンプしたいとき
    mockmvc.perform(get("/")) .andDo(log()); とかしとけばいい。 .andDo(print()); のほうが、確実に出
    2016-02-06(Sat)
  • spring boot で、テスト時だけ読ませたい @Configuration があるとき
    なんかよくわからんけど @ContextConfiguration 指定すると @SpringApplicationConfiguration が処理されなくなるのかな。よくわからんけど。 なので
    2016-02-06(Sat)
  • Java で method_missing したい。
    Java で method_missing したいというのは、テストを書いているときによくあるケースである。 Mockito など利用すればいいのだが、その中身が気になってしまうのが、エンジニアの性で
    2016-02-06(Sat)
  • Ported Cookie::Baker to Perl6
    I ported @kazeburo san's great Cookie::Baker to Perl6. This is my third module for Perl6 ecosyste
    2015-12-19(Sat)
  • Raw::Socket was retired.
    I removed raw-socket from ecosystem. Because I had misunderstood the behavior of IO::Socket::Async
    2015-12-19(Sat)
  • Getopt::Tiny for Perl6
    Hi, I shipped Getopt::Tiny for Perl6's ecosystem. You can install it by panda command: panda
    2015-12-19(Sat)
  • Shipped full featured Plack clone for Perl6 named `Crust`
    Hi, i'm tokuhirom, one of the core developer of Plack. During the past few weeks, I've been hack th
    2015-12-19(Sat)
  • «を入力する方法»
    Perl6 ではよく `$<pairs>».made` などと入力するシーンがあるが、これの入力方法はわかりづらい。 この記号は Guillemet と呼ばれていて、まあ ASCII の範囲外なので普
    2015-12-19(Sat)
  • WebSocket with Perl6
    Yay, I released WebSocket.pm on ecosystem. You can write a WebSocket server very easy! Here is an e
    2015-12-19(Sat)
  • Perl6 でリストから無限リストをつくる
    ## 問題 `my @a = <yellow red green>` のようなリストから `'yellow', 'red', 'green', 'yellow', 'red', 'green', ..
    2015-12-19(Sat)
  • Perl6 のフィボナッチ数列生成についての解説
    mattn ブログで紹介されている Perl6 のフィボナッチ数列が奇妙に見える人が多いようなので、まともな解説。 ref. フィボナッチ数列とは以下のような数列です。 1, 1, 2
    2015-12-19(Sat)
  • Perl6 における イテレータの挙動のメモ
    Perl6 のイテレータは、role Iterable を実装しているクラスから取得することができる。 Iterable には `iterator` メソッドが実装されていて、これを取り出せばよい。
    2015-12-19(Sat)
  • jcmd が "well-known file is not secure" という IO 例外を上げてくるときの対処
    jcmd が "well-known file is not secure" などと意味不明なことを申した場合、この例外は 以下の位置から上がっている。 ``` JNIEXPORT void JN
    2015-12-19(Sat)
  • C++ と valgrind
    libstdc++ は内部でメモリプールを持っている上に、プロセス終了時に開放しないので、valgrind が勘違いする。 以下のような極めて単純なプログラムでも All heap blocks w
    2015-12-19(Sat)
  • valgrind でメモリリークの誤検出が起きる場合、suppression を指定する
    valgrind は、問題がない場合でも誤検出することがママある。 そのような場合、suppressions ファイルを生成すればよい。 たとえば、`dlopen()` は内部でエラーメッセージ保存
    2015-12-19(Sat)
  • cmake で変数を全部ダンプする
    cmake で現在利用可能な変数の名前とその値をすべてダンプしたいということがあると思う。そんな時にはこうしたらいい。 get_cmake_property(_variableNames V
    2015-12-19(Sat)
  • MoarVM における DESTROY メソッドの呼び出し手順
    refcnt 型のインタープリタの場合デストラクタの呼び出しは極めて容易だが、GC の場合はちょっと面倒だ。 Rakudo の場合は、src/Perl6/Metamodel/Finalization
    2015-12-19(Sat)
  • Perl5 での Plack に当たる Crust をみんなで作った話
    この記事は <a href=" 6 Advent Calendar 2015</a> の1日目です。 Perl 6 は、2015年のクリスマスにリリースされることになっており、我々としてはそれを待ち
    2015-12-19(Sat)
  • C 言語で qsort_r がポータブルじゃなくて困る時の対策
    qsort は、ソート対象の変数以外を渡すことができないため、マルチスレッドのプログラムでは取り扱いづらい。tls 使えばいいが、それもなあ、という感じな時は、qsort_r を使いたい。 しか
    2015-12-19(Sat)
Prev
Next
© tokuhirom