Go
Blog:
CosmosのAppHash不整合をデバッグする

CosmosSDKで作成したブロックチェーンの、非決定的な処理によるConsensusErrorを解決する1手法をまとめたので紹介します。

Blog:
slogでログにTraceIDを出す

go1.21で構造化ログを出すslogが標準ライブラリに導入されました。これを使ってTraceIDを一緒にログに出すようにします。

Works:
AvatarMeets

AvatarMeetsは2023年7月に秋葉原の大通り沿いにて開催されたVKetRealというイベントにて実施した企画です。横幅6Mもの巨大ディスプレイの前で、複数人同時にモーションキャプチャーを行い、VRの中の人と交流できるイベントです。この記事では、このAvatarMeetsを制作する上で注力した点などを解説しています。

Blog:
Goプログラムのトレースを取ってGrafanaCloudで可視化する

GoでAPIサーバーを構築していると、「エラーログがでたけどこのログはどのリクエストに紐づいているんだっけ?」となることが多々あります。traceは主に処理時間の内訳や呼び出しの依存関係を示してくれますが、スパンのコンテキストにいろんな値を保持しておき、それをエラーログと結びつけることでデバッグに便利に使えます。また、自身でtraceやlogの記録・可視化を行う環境を構築することは面倒ですが、GrafanaCloudの無料枠を使うとこれが快適に行えるので今回はこれを活用します。

Blog:
golangでdynamoDBを叩く

バイトでgolangでdynamodbを叩くlambdaを書く機会があったので、そのときに調べたことを軽くメモしています。 goはほんと触りたてなので、あたまわるコードや誤りが存分に含まれている可能性高いです。