2014年01月12日

_ tDiaryをNew Relicで監視してみる

New Relic's Logo

ウェブアプリケーションのパフォーマンス監視のサービスにNew Relicというのがあって、無料で使えるというので試しに使ってみた。
監視する対象として、せっかくなのでこのtDiaryのパフォーマンスを見ている。

設定

New relicのアカウントを作成してからは、設定自体はとても簡単。

クライアントのインストール

Ruby用のクライアントがgem として公開されているので、Gemfileに

gem 'newrelic_rpm'

を追加して、bundle install すればいい。

Rack ミドルウェアを差し込む

RailsやSinatra は、requireすれば自動的に差し込まれるようだが、自前のRackアプリの場合は少々修正が必要のようだ。
tDiaryは素敵なことにRackアプリケーションとして提供されているので、New Relicのミドルウェアを差し込めば、パフォーマンス監視ができる!

ということで、以下のようにconfig.ruを修正。

$:.unshift( File::dirname( __FILE__ ).untaint )

require 'dotenv'
Dotenv.load ".env.#{ENV['RACK_ENV'].downcase}", '.env'

require 'tdiary'
require 'tdiary/rack/html_anchor'
require 'tdiary/rack/valid_request_path'
require 'tdiary/rack/auth/basic'
require 'omniauth'
require 'tdiary/rack/auth/omniauth'

use Rack::Reloader unless ENV['RACK_ENV'] == 'production'

## Begin: New Relic
require 'new_relic/agent/instrumentation/rack'

class TDiary::Application
  include ::NewRelic::Agent::Instrumentation::Rack
end

require 'new_relic/rack/agent_hooks'
require 'new_relic/rack/browser_monitoring'
require 'new_relic/rack/error_collector'

use NewRelic::Rack::AgentHooks
use NewRelic::Rack::BrowserMonitoring
use NewRelic::Rack::ErrorCollector
## End: New Relic

run TDiary::Application.new

こんな感じで、あとはアクセスがある度にデータがNew Relicに送られ、モニターを見れる。
iPhone アプリもあるので、手軽に負荷状況が見れるのも面白い。


2026年01月12日

_ モバイルからClaude Code で開発をしてみた

先週はRSGTで、昨日はライブで動き回ったのでまだ脚に疲れが残っていたので、今日はゆったりと体を休める日にした。体を休めつつ、試しにモバイルアプリだけを使ってClaude Codeで開発をしてみた。

対象にしたのは、個人で開発しているChrome拡張機能のCopy for Scrapbox。E2Eのテストが無い状態だったので、テスト戦略とロードマップを作成させてからその実装までを試してみた。

モバイルからでも指示は出せそう。自然言語の入力であればスマートフォンからでも十分できる。数行のコードスニペット程度ならまだ入力できそうな印象はある(今回はしなかった)。一方で、生成されたコードの差分を見るのが難しいと感じた。モバイルのClaude Codeだと編集・追加したコードを全て見る画面が無い(ように見える)。なので指示に対して実施したタスクとその結果を見ながら判断し、PRを作成したあとにコードレビューをした。GitHubのアプリケーションでコードレビューをしたが数百行単位で差分が出されるとなかなか厳しい。

でも、モバイルから簡単に開発が進められるというのはかなり便利な状況である。ちょいちょい使っていこう。

_ 読書をした。

ちまちまと読み続けている「継続的デリバリーのソフトウェア工学」をカフェで読んでいた。
最近読書ができていなかったので、ちまちまと時間を見つけてやっていこう。


© 2026 Satoryu's Diary