トップ «前の日記(2026/07/02 (木) ) 最新 編集 RSS feed

HsbtDiary


2026/07/03 (金) [長年日記]

DataDog と Heroku と Rails

昨日アップデートした bugs だけど、Datadog をもう少し使い倒した方がいいな、ってことで claude と壁打ちしながら今現在無効だけど、有効にした方がいい設定は何?というのを壁打ちしながら片っ端から有効化していた。

あと、サービス名を適当につけた結果、Datadog の Service とログ drain の名称に差分があり、そのせいで claude が毎回ミスったり、メモリを見て修正という感じだったので、未来に向けては今直すのが一番最速ということで昔のデータがロスになったとしてもえいやっと全部揃えてリネーム、かつ親子関係を作ってデータを作り直すことにした。

後最後に、datadog gem と heroku の dyno, scheduler の組み合わせが絶望的に悪くて、build フェーズで datadog gem を読み込むけど agent がないからログに通信エラーが記録される、dyno を起動するときも ある tracing は boot.rb の時点では取れないからエラーになる、タグがこの時点ではないから、rake だと〜が動いてないから、みたいな感じでゴミログが記録されて邪魔なのでこの機会に徹底的に潰してしまった。

これで claude に「なんかエラーがないか見て」というときに「〜は既知のエラーなので除外」みたいなしょうもない処理がなくなって欲しい...。

psych の libfyaml バックエンドを作ってみた

psych に YAML 1.2 対応してくれ、という要望は多いものの libyaml は 1.1 準拠で 1.2 はあったりなかったり、という状況だった。で、Psych で 1.2 対応する、としても Ruby レイヤで何かする必要があり、互換性とかどうすんのと悩ましい問題があったので libfyaml という 1.2 に準拠している C ライブラリを psych で libyaml と差し替えて動くようにしてみた。

https://github.com/ruby/psych/pull/805

これ自体は Fable 5 ではなく Opus 4.8 で、設計を用意して、あとは作って、で出てきたものに対して牧さんが使っている claude のレビュー skill を Ruby と C にアレンジしたものでレビューさせて、あとは自分が使っている agy でのレビュー、4本のレビューを突合させて指摘の修正、もう一周、みたいな感じで直したものでマージしてしまった。

もう少ししたらこれを Psych 6.0.0 としてリリース予定だけど、パフォーマンスとかは全然ダメで emit は2倍くらい遅い。YAML 1.2 に完全準拠というのが目的の人向けの機能になるけど、なんかそれっぽく動いているので興味がある人は使ってください。