Slide 1

Slide 1 text

Langfuse v3 使ってますか? L a n g f u s e 2 0 2 5 L a n g f u s e N i g h t # 1 Y U O T S U B O

Slide 2

Slide 2 text

ABOUT ME Yu Otsubo ゆるふわエンジニア KDDIアジャイル開発センター所属 生成AIを活用したプロジェクトでゆるふわエンジニア 妻と犬と細々暮らしている ちなみに、志田未来さんと神木隆之介さん それぞれが生まれた誕生日の間に生まれている

Slide 3

Slide 3 text

No content

Slide 4

Slide 4 text

Langfuse v3

Slide 5

Slide 5 text

Langfuse Cloud版 挙手お願いします 🙋🙋‍♀️

Slide 6

Slide 6 text

Langfuseセルフホステッド版 挙手お願いします 🙋🙋‍♀️

Slide 7

Slide 7 text

Langfuseセルフホステッド版でV3 挙手お願いします 🙋🙋‍♀️

Slide 8

Slide 8 text

大幅にアーキテクチャが変わったことで話題でした。 マイグレーションにチャレンジした方も多いのではないでしょうか? S T A B L E R E L E A S E O N 1 2 / 9 / 2 0 2 4 . Langfuse v3

Slide 9

Slide 9 text

V3 どんなイメージですか...?

Slide 10

Slide 10 text

今日のLTを見て

Slide 11

Slide 11 text

アップデートでどんなことが 変わったのでしょうか? その前にLangfuse V3の特徴 Async Worker OLAP(Clickhouse) Queuing Webサーバーの 重たい処理を 非同期で処理 分散トレーシングという 重たい分析 ワークロードを解決 Async Workerと Webサーバーの間を 安全に受け持つ

Slide 12

Slide 12 text

アップデートでどんなことが 変わったのでしょうか? その前にLangfuse V3の特徴 Async Worker OLAP(Clickhouse) Queuing Webサーバーの重たい処 理を非同期で処理 分散トレーシングという 重たい分析ワークロード を解決 Async WorkerとWebサ ーバーの間を安全に受け 持つ 詳しくはBlogを 読んでね!

Slide 13

Slide 13 text

No content

Slide 14

Slide 14 text

No content

Slide 15

Slide 15 text

v2 AWS App Runner Amazon Aurora Serverless v2 シ ン プ ル さ イ ン フ ラ コ ス ト 可 用 性 AWS App RunnerとAurora構成 LangfuseはNext.jsで動いているので App Runnerでリクエストベースでの 課金が実現できます。 我 々 の V 2 構 成 は こ れ だ ! まずはじめに

Slide 16

Slide 16 text

v3に移行するに あたって 右の4つを重要項目として V3切り替えを目指します。 会社のMission/Vision/Value みたい... データは今運用しているものを 消さずに V3になったからと言って大幅にコスト アップは許されない 面倒な手順書は作成したくない IaCでパッと華麗に できるだけダウンタイムは少なくしたい Keep Data Reduce the Cost Easy Deploy Minimum Downtime

Slide 17

Slide 17 text

v2 AWS App Runner Amazon Aurora Serverless v2 現行動いている構成のAuroraは消したり、 移行したりせずそのまま放置する。 念の為作業前にスナップショットを取って おく。(保険は重要) P o s t g r e S Q L の イ ン ス タ ン ス は そ の ま ま に Keep Data

Slide 18

Slide 18 text

万が一のv3→v2切り戻しに備えて、 バージョンアップで走るPostgreSQLに対 してのPrisma Migrationについて注意。 down.sqlはLangfuseプロジェクトで 未作成なので、 万が一のときは手動でダウンマイグレーシ ョンを実行する必要がある。 D B マ イ グ レ ー シ ョ ン に 注 意 Keep Data

Slide 19

Slide 19 text

あまりおすすめされないが、万が一のとき はPostgreSQLのテーブルに対して操作が 必要なため ダウンマイグレーションの際 Clickhouseへのバックグラウンドマイ グレーションを強制実行したい場合 A u r o r a の ク エ リ エ デ ィ タ を 有 効 化 し て お く Keep Data

Slide 20

Slide 20 text

Async worker単体で動くことはないので (Queueにジョブ登録されるまで動かない) 一気に裏側を作成し、 最後にWeb Serverのv3バージョンアップ を実施しv3に変更する。 App Runnerの自動デプロイを賢く使って 公式のMigration Guideを少しだけ簡易化 させた方法です。 W e b サ ー バ ー 以 外 を す べ て 新 規 作 成 し 、 最 後 に v 3 に 上 げ る Minimum Downtime 新規作成 v2のまま放置 v3 手を付けず

Slide 21

Slide 21 text

不測のことはつきものなのでアプリケーシ ョン全体をメンテナンスにしてしまう。 ビジネス部門との調整に難航する場合は、 v3化によるスケーラビリティを説明すると よい。 そ れ で も 不 安 な ら 夜 間 メ ン テ に し て し ま う Minimum Downtime

Slide 22

Slide 22 text

単純なAWS費用だけでなく、 運用コスト含めて考えるとできるだけマネージドな サービスを活用するとよい。 Queue → ElastiCache(Redis) Async Worker / Clickhouse→ ECS (Fargate) Clickhouseの永続化 → EFS Blob Storage → S3 可 能 な 限 り マ ネ ー ジ ド に Reduce the Cost Langfuse Worker Clickhouse Service Service Container Amazon ECS Cluster Container Amazon EFS AWS App Runner Amazon Aurora Serverless V2 Amazon ElastiCache Amazon S3

Slide 23

Slide 23 text

さらにコストを抑えたい場合、 Fargate SpotでAsync Workerを実行 する(※1) Redisの代わりにValkeyを使う EFSのone-zoneにする(※2) (開発環境)Scheduleで落とす などが検討できる F a r g a t e S p o t や V a l k e y 、 E F S o n e - z o n e の こ と も 考 え て み る Reduce the Cost ※1: 最悪RedisにQueueが貯まるので、Langfuse画面上に反映が遅延することも ※2: ClickhouseのコンテナのAZと揃える必要がある。揃えないで立ち上げるとProvisioningで落ちる

Slide 24

Slide 24 text

どれくらいコス ト変わるのか v2と比べ+$40は痛いですが、 抑えようと思えば$100くらい は圧縮できる V3 お得構成 V2 V3 ちゃんとした構成 $60 $196 $100 v2構成に加えて ElastiCache (Valkey cache.t2.micro) EFS One Zone Fargate Spot2台 App Runner (1 vCPU & 2 GB) で日勤帯のみアプリ利用想定 Aurora Serveless v2 (0.5ACUで稼働想定) Fargate Spot→Fargate EFSをStandardに ちゃんと作るならこっち 約 約 約

Slide 25

Slide 25 text

ここまで説明してきたことを、 Terraformで一発で適用できたら嬉しい。 そんな願いを叶えるモジュールがある。 す べ て は T e r r a f o r m a p p l y で Easy Deploy

Slide 26

Slide 26 text

なのでご安心を

Slide 27

Slide 27 text

どんなイメージですか...?

Slide 28

Slide 28 text

どんなイメージですか...?

Slide 29

Slide 29 text

最後に

Slide 30

Slide 30 text

Langfuseセルフホステッド版 と向き合うには OSSのコードを読むことでトラブルシュートもできるし、 趣深い改修が入っていることもわかる。 コードを読もう!  OSSという特性を活かして Just Read it!!! 最高のドキュメントはコードです!(持論) でも一人で読むのはツライので 皆さん情報共有しましょう!タスケテ.....

Slide 31

Slide 31 text

THANK YOU F O R W A T C H I N G