Upgrade to Pro — share decks privately, control downloads, hide ads and more …

大規模UnityゲームタイトルでのObservabilityへの取り組み事例

Sponsored · Your Podcast. Everywhere. Effortlessly. Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.

 大規模UnityゲームタイトルでのObservabilityへの取り組み事例

Avatar for WonderPlanet Inc.

WonderPlanet Inc.

June 13, 2023
Tweet

More Decks by WonderPlanet Inc.

Other Decks in Programming

Transcript

  1. © WonderPlanet Inc. 2 自己紹介 吉谷幹人(ヨシヤミキト) ワンダープラネット株式会社 CTO @mikito0521 テックリードとして複数プロジェクトのシステムアーキテクチャや、

    技術課題マネジメント、組織運営を主導。その後、全社横断組織 EDMO(エドモ)のエンジニアリング担当かつCTOとして、社内の技 術課題管理や基盤整備、社内標準化などに従事。 主な著書 • Unity2021 3D/2Dゲーム開発実践入門 • Unityゲーム プログラミング・バイブル(共著)
  2. © WonderPlanet Inc. 7 面白さの追求 • 合理性からはみ出るロジック • 特定のコラボイベントだけの処理、機構 •

    エモい表現 • 仕様通りの実装完了は完了じゃない • +楽しいが必要、答えがない • 運用での機能追加〜長期運営 • 1〜2週間おきのアップデート • 計画外の追加コンテンツの急遽配信 • データの蓄積・肥大化
  3. © WonderPlanet Inc. 8 世界中のモバイル端末で動作させる • ゲームは実行負荷がべらぼうに高い... • 60FSPアクション性高いバトル画面 •

    もりもりの演出、画面エフェクトのレンダリング • 数百MB〜数GBのアセット • さまざまな端末での動作保証 • Android端末数5000+ • 世界中のネットワーク環境
  4. © WonderPlanet Inc. 10 インフラからモバイルアプリまで観測可能に インフラ・ネットワーク 監視 サーバーアプリ 監視 モバイルアプリ

    監視 顧客体験 監視 オブザーバビリティ データをリアルタイムに 取得し続け、常にシステム全容 把握と問題の予防・ 改善ができる状態
  5. © WonderPlanet Inc. 12 APM (Application Performance Monitoring)の活用 • 負荷試験中のチューニング/ボトルネックのドリルダウン

    • 非効率クエリ • アプリロジックの重い処理(繰り返し処理とか) • キャッシュ利用方法 • 運用中の問題への対応 • Transaction重い順
  6. © WonderPlanet Inc. 自社開発 14 モバイルモニタリング向けUnityラッパーを開発 • Android、iOSのSDK • 端末・OS情報、通信時間、クラッシュなど基本情報が取れる

    • Unity自作ラッパーを開発 • Unityプロジェクトコードと連携して独自メトリクスも観測できるように New Relic Android SDK New Relic iOS SDK Unityラッパー 標準メトリクスの取得 独自メトリクスの取得
  7. © WonderPlanet Inc. 18 モバイルモニタリングの効果や所感 • Unityライブラリの開発はそこまで難しくはなかった • NativeのSDK導入だけでも結構計測ができる •

    指標やダッシュボードを作るのが結構むずい • 以下のようなところは検知できた • 急に増えたクラッシュ=>対応 • 異常にレスポンスが悪いAPI=>対応 • 本格的な活用はこれからというところ
  8. © WonderPlanet Inc. 19 開発→運用 • 開発中盤からモバイルモニタリングSDKの導入を行う • 問題を生み出さない開発 •

    問題に気づく運用 • 問題への機敏な対応 • ユーザー体験を測るSLI/SLOを選定中 • チームで追っていくフロー・文化を確立したい
  9. © WonderPlanet Inc. 20 まとめ • ゲーム開発は不確実性の塊、Observability向上がカギと見る • 予測が難しい中での最適化 •

    複雑なドメインコード、膨大な端末、通信環境 • 機敏なビジネス的動きへの対応 • サービスを統合して観測 • APMでのボトルネックのドリルダウン&アクション • Unityのプラグインを作ってモバイルも計測 • SLI/SLOを策定中=>チームで追う文化へ