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
OSSのissueから学ぶユーザサポートのノウハウ
Search
Satoru Takeuchi
PRO
June 28, 2020
Technology
0
250
OSSのissueから学ぶユーザサポートのノウハウ
以下動画のテキストです。
https://youtu.be/M2lZuNk2tOk
Satoru Takeuchi
PRO
June 28, 2020
Tweet
Share
More Decks by Satoru Takeuchi
See All by Satoru Takeuchi
小学校5,6年生向けキャリア教育 大人になるまでの道
sat
PRO
8
3.3k
ファイルシステムの不整合
sat
PRO
2
120
書籍執筆での生成AIの活用
sat
PRO
2
410
ChatGPTに従って体調管理2026
sat
PRO
0
160
eBPF
sat
PRO
1
130
waruiBPF
sat
PRO
0
120
eBPFとwaruiBPF
sat
PRO
5
4.1k
Pythonのコードの気になる行でスタックトレースを出す
sat
PRO
1
110
ソースコードを読むときの思考プロセスの例 ~markdownのレンダリング方法を知りたかった2 markdownパッケージ~
sat
PRO
0
220
Other Decks in Technology
See All in Technology
類似画像検索モデルの開発ノウハウ
lycorptech_jp
PRO
5
1.1k
脳内メモリ、思ったより揮発性だった
koutorino
0
130
僕、S3 シンプルって名前だけど全然シンプルじゃありません よろしくお願いします
yama3133
1
190
OpenClawで回す組織運営
jacopen
3
680
Shifting from MCP to Skills / ベストプラクティスの変遷を辿る
yamanoku
4
780
When an innocent-looking ListOffsets Call Took Down Our Kafka Cluster
lycorptech_jp
PRO
0
120
タスク管理も1on1も、もう「管理」じゃない ― KiroとBedrock AgentCoreで変わった"判断の仕事"
yusukeshimizu
5
2.5k
SaaSからAIへの過渡期の中で現在、組織内で起こっている変化 / SaaS to AI Paradigm Shift
aeonpeople
0
120
Oracle Database@Google Cloud:サービス概要のご紹介
oracle4engineer
PRO
5
1.1k
組織全体で実現する標準監視設計
yuobayashi
2
470
Yahoo!ショッピングのレコメンデーション・システムにおけるML実践の一例
lycorptech_jp
PRO
1
190
Claude Codeが爆速進化してプラグイン追従がつらいので半自動化した話 ver.2
rfdnxbro
0
490
Featured
See All Featured
Rebuilding a faster, lazier Slack
samanthasiow
85
9.4k
What’s in a name? Adding method to the madness
productmarketing
PRO
24
4k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
249
1.3M
The AI Search Optimization Roadmap by Aleyda Solis
aleyda
1
5.4k
Art, The Web, and Tiny UX
lynnandtonic
304
21k
Why Mistakes Are the Best Teachers: Turning Failure into a Pathway for Growth
auna
0
77
Understanding Cognitive Biases in Performance Measurement
bluesmoon
32
2.8k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.4k
<Decoding/> the Language of Devs - We Love SEO 2024
nikkihalliwell
1
150
Bash Introduction
62gerente
615
210k
Skip the Path - Find Your Career Trail
mkilby
1
75
The AI Revolution Will Not Be Monopolized: How open-source beats economies of scale, even for LLMs
inesmontani
PRO
3
3.1k
Transcript
OSSのissueから学ぶ ユーザサポートのノウハウ Jun 28th, 2020 Satoru Takeuchi Twitter: satoru_takeuchi 1
前置き • この動画におけるユーザサポートの定義 ◦ 自分以外のユーザが検出した問題を解決すること • スキルを磨くのが大変 ◦ 具体的なことを学べる書籍や記事が少ない ◦
OSSのissueがよい教材になるが、眺めるだけではサポート技術者の意図に気づきにくい • 私が最近解決したOSSのissueを題材にユーザサポートのノウハウを学ぶ ◦ 業務としてのユーザサポートとは異なる点が多々あるが、ここでは割愛 • 対象OSSはRook ◦ 分散ストレージCephのオーケストレータ ▪ Ceph以外もサポートするがここでは割愛 ◦ Kubernetes上で動作する • 必要な情報は動画内で適宜補足 2
もくじ • 題材とするissue • ユーザと認識を合わせる • 原因の特定と修正 • まとめ 3
もくじ • 題材とするissue • ユーザと認識を合わせる • 原因の特定と修正 • まとめ 4
題材とするissue • devicePathFilter doesn't work with /dev/disk/by-partlabel #5504 ◦ https://github.com/rook/rook/issues/5504
• 前提知識 ◦ 設定ファイルにdevicePathFilterというフィールドがある ◦ このフィールドに記載の正規表現にマッチする名前のデバイスを Cephクラスタに組み込める • 概要 ◦ あるパーティションを Cephクラスタに組み込みたい ◦ パーティションラベルをもとに udevが作ったデバイス名を使ってデバイスを指定したい ▪ /dev/disk/by-partlabel/<パーティションラベル > ▪ 「その6 デバイス名は変わりうる」 ◦ “devicePathFilter: /dev/disk/by-partlabel/CEPH_DATA”と設定ファイルに書いた ◦ RookはパーティションをCephクラスタに組み込んでくれなかった 5
もくじ • 題材とするissue • ユーザと認識を合わせる • 原因の特定と修正 • まとめ 6
ユーザと認識を合わせる • ユーザと自分の間で「解決すべき問題は何か」という認識を合わせる ◦ 何が真の問題なのか、そもそも本当にそれは問題なのか ◦ ユーザ自身が真の問題に気づいていないこともある ◦ 認識を合わせないまま先に進めると無駄になりがち •
不明点がなくなるまで確認を繰り返す ◦ 足りていない情報を要求する ▪ https://github.com/rook/rook/issues/5504#issuecomment-630720248 ◦ もらった情報の不明点を明らかにする ▪ https://github.com/rook/rook/issues/5504#issuecomment-636632604 • できれば手元で再現させる ▪ https://github.com/rook/rook/issues/5504#issuecomment-636780880 7
もくじ • 題材とするissue • ユーザと認識を合わせる • 原因の特定と修正 • まとめ 8
原因の特定 • ユーザから受け取った情報をもとに当たりをつける ◦ ログを見ると、マッチすべきはずの条件でマッチしていないのが問題だった ▪ https://github.com/rook/rook/issues/5504#issuecomment-636828176 ◦ 当該デバイスを示す名前のリストが作られていなかった ▪
https://github.com/rook/rook/blob/v1.3.6/pkg/daemon/ceph/osd/daemon.go#L378 • それでもわからなければ別の手段をとる必要がある ◦ ログを仕込んだデバッグ用バイナリの作成、デバッガの利用 ◦ 手元で再現できない場合はユーザ環境でそれらを使ってもらったり、追加情報を要求したり 9
修正 1. 単に前述のリストを作るようコードを修正、マージ • https://github.com/rook/rook/pull/5628 2. ユーザが使っているバージョンへのバックポート • https://github.com/rook/rook/pull/5689 10
Master branch V1.3 branch (ユーザが使っているバージョン ) 本バグの修正commit backport
もくじ • 題材とするissue • ユーザと認識を合わせる • 原因の特定と修正 • まとめ 11
まとめ • まずはユーザと認識を合わせる • 手元で再現できると非常に楽 • 原因究明段階からは開発者としての能力が強く問われる 12