Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
ヘンリーにおける可観測性獲得への取り組み
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
nabeo
October 19, 2023
Technology
2
2.3k
ヘンリーにおける可観測性獲得への取り組み
OpenTelemetry Meetup 2023-10
https://opentelemetry.connpass.com/event/296353/
nabeo
October 19, 2023
Tweet
Share
More Decks by nabeo
See All by nabeo
kotlin-lsp の開発開始に触発されて、Emacs で Kotlin 開発に挑戦した記録 / kotlin‑lsp as a Catalyst: My Journey to Kotlin Development in Emacs
nabeo
3
750
SRE 文化の醸成: stream-aligned チームに Enabling するために実施した事例の解説 / Cloud Operator Days Tokyo 2025
nabeo
0
230
kotlin-lsp を Emacs で使えるようにしてみた / use kotlin-lsp in Emacs
nabeo
0
380
Docker Compose で手軽に手元環境を実現する / Simplifying Local Environments with Docker Compose #CinemaDeLT
nabeo
0
570
OpenTelemetry Collector 自身のモニタリング / Monitoring the OpenTelemetry Collector itself
nabeo
0
580
AWS CDK (TypeScript) を継続的にメンテ可能にするために取り入れているノウハウ集
nabeo
0
1.4k
AWS Organizations 組織を移動する時に 考えること 100 連発 (AWS Control Tower への組み込みを添えて) / Hatena Engineer Seminar #20
nabeo
2
3.4k
AWS Transit Gateway を使った内部ネットワークの構成変更の話 / AWS Transit Gateway and Me
nabeo
0
750
Docker イメージのダイエットが成功するまで帰れまてん / Docker Image Diet Challenge
nabeo
4
4.3k
Other Decks in Technology
See All in Technology
Databricks Free Edition講座 データサイエンス編
taka_aki
0
290
サイボウズ 開発本部採用ピッチ / Cybozu Engineer Recruit
cybozuinsideout
PRO
10
73k
AIと新時代を切り拓く。これからのSREとメルカリIBISの挑戦
0gm
0
780
今日から始めるAmazon Bedrock AgentCore
har1101
4
390
AzureでのIaC - Bicep? Terraform? それ早く言ってよ会議
torumakabe
1
370
10Xにおける品質保証活動の全体像と改善 #no_more_wait_for_test
nihonbuson
PRO
2
200
こんなところでも(地味に)活躍するImage Modeさんを知ってるかい?- Image Mode for OpenShift -
tsukaman
0
100
2026年、サーバーレスの現在地 -「制約と戦う技術」から「当たり前の実行基盤」へ- /serverless2026
slsops
2
210
顧客の言葉を、そのまま信じない勇気
yamatai1212
1
340
15 years with Rails and DDD (AI Edition)
andrzejkrzywda
0
180
GCASアップデート(202510-202601)
techniczna
0
250
CDK対応したAWS DevOps Agentを試そう_20260201
masakiokuda
1
200
Featured
See All Featured
What the history of the web can teach us about the future of AI
inesmontani
PRO
1
420
AI: The stuff that nobody shows you
jnunemaker
PRO
2
240
Intergalactic Javascript Robots from Outer Space
tanoku
273
27k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
231
22k
Neural Spatial Audio Processing for Sound Field Analysis and Control
skoyamalab
0
160
Mobile First: as difficult as doing things right
swwweet
225
10k
How to Ace a Technical Interview
jacobian
281
24k
Documentation Writing (for coders)
carmenintech
77
5.2k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
17k
Discover your Explorer Soul
emna__ayadi
2
1.1k
Agile that works and the tools we love
rasmusluckow
331
21k
Tell your own story through comics
letsgokoyo
1
800
Transcript
Copyrights(c) Henry, Inc. All rights reserved. 好きになる、はじめての電子カルテ OpenTelemetry Meetup 2023-10
ヘンリーにおける可観測性獲得への取り組み 2023/10/19 @nabeo
Copyrights(c) Henry, Inc. All rights reserved. 自己紹介 渡辺 道和 (@nabeo)
株式会社ヘンリー CTO室 SRE 2023年06月〜 2
Copyrights(c) Henry, Inc. All rights reserved. クラウド型電子カルテ・レセコンシステム「Henry」 • 電子カルテ :
医療情報を管理・記録するソフトウェア • レセコンシステム : レセプト (診療報酬) に基づいた会計情報を管 理するソフトウェア 3
Copyrights(c) Henry, Inc. All rights reserved. 扱っている課題の特徴と技術スタック • ドメインが巨大、かつ、複雑、かつ、難解 ◦
難解な診療報酬制度が2年ごとに改訂される ◦ 地方自治体ごとに異なる公費の計算 ◦ 医療機関様ごとに異なるニーズへの対応 ◦ ソフトウェアとしても機能が複雑に絡まっていて見通しにくい状態 • 技術スタック ◦ Server-side Kotlin ◦ Backend for Frontend としての Node.js (TypeScript) ◦ gRPC、GraphQL ◦ Google Cloud 4
Copyrights(c) Henry, Inc. All rights reserved. 可観測性獲得文脈での課題 • 医療機関様ごとに必要とされる機能やその使用頻度が異なる •
問題やお問い合わせの切り分けが難しい • SLI/SLO の整備でも可観測性の獲得は重要である 5
Copyrights(c) Henry, Inc. All rights reserved. ヘンリーにおける Observability ツールの現 状
• 一部で OpenTelemetry のトレース情報を Cloud Trace や Sentry に送信して、可視化をしている ◦ OpenTelemetry SDK のトレース ID 採番を利用して、分散システムの ログにトレーサビリティを持たせている ◦ 意図通りのトレーサビリティが確保できていない問題があった • 【イマココ】トレース情報の送信方法の見直し ◦ 一緒にプロジェクトを進めている同僚から OpenTelemetryを正しく計装 して、Datadogに連携したら欲しい情報がとれていそうという示唆があっ た 6
Copyrights(c) Henry, Inc. All rights reserved. Datadog の検討 • いい感じに可視化できて、トレース情報の扱いもコントロールでき
そう ◦ とくに tail sampling ができそうということが大きい • 一旦、Datadog の採用は見送る方針に変更 ◦ OpenTelemetry 計装に問題がありそうということもわかった ◦ コストの試算したところ一旦は採用を見送って、Cloud Trace や Cloud Logging をちゃんと使う方針に方向転換 ▪ Datadog の利用料金だけでまぁまぁな金額になりそうだった ▪ OpenTelemetry の計装だけでは Datadog による可視化、データ連携で制限が つく 7
Copyrights(c) Henry, Inc. All rights reserved. Cloud Run サービス +
OpenTelemetry Collector エージェントの実装アプローチ • OpenTelemetry エージェントをアプリケーションに組み込む • OpenTelemetry コレクターをサイドカーとして組み込む • 完全に独立した OpenTelemetry コレクターにトレース情報を送信 する 8
Copyrights(c) Henry, Inc. All rights reserved. 実装アプローチの比較 OpenTelemetry エージェントをアプリケーションに組 み込む
• 😀 ◦ インフラ視点で管理するコンポーネントが一番少ない構成 • 🤨 ◦ アプリケーションと密結合になる ◦ エージェントが起動してから、アプリケーションでリクエストを受付させる など気を遣う必要がある 9
Copyrights(c) Henry, Inc. All rights reserved. 実装アプローチの比較 OpenTelemetry コレクターをサイドカーとして組み込む •
😀 ◦ アプリケーションからコレクター部分を切り離して管理できる • 🤨 ◦ 一般的なコンテナ PaaS の課金体系と相性が悪い ◦ Cloud Run ではマルチコンテナ対応が 2023/10 時点で pre-GA 10
Copyrights(c) Henry, Inc. All rights reserved. 実装アプローチの比較 独立した OpenTelemetry コレクターにトレース情報を送信する
• 😀 ◦ アプリケーションからコレクター部分を切り離して管理できる ◦ アプリケーションのトレース情報の送信先をまとめることができる -> コス トメリットが期待できる • 🤨 ◦ インフラ視点だと構成が一番複雑になる ◦ トレース情報の送信元と OpenTelemetry コレクターの間で通信ができ なかった時のアプリケーションの挙動を確認しておく必要がある 11
Copyrights(c) Henry, Inc. All rights reserved. Cloud Run で OpenTelemetry
コレクターを 動かす時の注意 • OpenTelemetry の Node.js 向け SDK では認証ヘッダをつける ことが難しいので、通信経路を工夫する必要がある • OpenTelemetry の仕様の他にベンダー独自拡張の仕様にも気を 配って計装する必要がある 12
Copyrights(c) Henry, Inc. All rights reserved. Thank you We are
hiring!! https://jobs.henry-app.jp/ 13 https://dev.henry.jp/ We are writing!!