Logentries と Papertrail どっちをつかうのがいいのか

LogentriesPapertrail の簡単な機能比較。heroku で利用する前提

両方でできること

  • ログを閲覧する
  • ログからのアラート通知

Logentries だけでできること

  • ログを解析してグラフを作れる
    • サーバのパフォーマンス監視
    • ユーザのアクセス解析
  • 公式iOSアプリがあって、アラート通知を閲覧できる

Papertrail だけでできること

  • とくになさそう?

感想

多機能さで言えば Logentries の勝ちなんだけど、Papertrail はログを検索することに特化しているため扱いやすいし画面も見やすい。Logentries 多機能すぎて学習コストが高い。どちらかというとログ解析のためのツールのような印象を受ける。なので「何かあった時にログが見たい、アラートがほしい」という使い方をするのであれば Papertrail の方がオススメな感じがする。

好きなファイルサイズの画像を作る

  • ファイルアップロードのテストで、ファイルサイズのチェック部分のテストがしたい
  • 簡単に生成する方法を調べたところ、imagemagick で画像をつくり、その後に exif の comment にテキストを流し込んでファイルサイズを調整するやり方を見つけた
  • しかしそのブログのママではうまく動かなかったので、Ruby で雑にスクリプト書いた
  • モチベーション湧いたらちゃんと引数受け付けたりできるようにしたい

create image whose file size you can specify for t ...

参考

Generate dummy images for testing file upload - Pixelastic

lambda と -> の違い

同じかと思ってたけど振る舞いが異なるケースがあった

def hoge(name, block)
  puts name
  block.call
end

hoge :fuga, -> { puts 'foo' }
hoge :fuga, lambda { puts 'foo' }
hoge :fuga, -> do puts 'foo' end
hoge :fuga, lambda do puts 'foo' end

最後の例でこうなる

hoge.rb:9:in `lambda': tried to create Proc object without a block (ArgumentError)

do ... end は結合強度的に hoge にブロック渡す(のでこのケースではエラーになる)はずだけど、 -> と併用した場合は do...end の代わりに { } を使用したのと同じような形になるんですかね。

合わせて読みたい

do...endと{...}の違い - おもしろWEBサービス開発日記

bitbucket について

GitHubとくらべての雑感です。基本的にはだいたい同じように使えますが、いくつか気になる点があったのでメモ。

良い点

  • プルリクエストの画面上で、リアルタイムで同じ画面を見ている人のアイコンが表示される

悪い点

  • 画像をクリップボードからコピー出来ない
  • プルリクエストの画面で、CIの結果を確認できない
  • ページの表示がちょっぴり遅い
  • 外部サービスで使えないものがある
    • houndci
    • circleci
    • など

所感

CIの結果確認できないの、どうにかできないかなー