12
7

More than 1 year has passed since last update.

UE4にSentryを入れてエラー監視を楽にする

Last updated at Posted at 2022-09-26

Sentry

Sentryはエラー監視をやってくれるプラグインです。
UnityやWebアプリではよく使われてますがUE4、UE5に対応してるのに使ってる話をきかないので
「そんなもったいない!入れるだけでどこでクラッシュしてるかのQAとかはかどるのに!」
ってことでオイラが記事にしまーす(ΦωΦ)

Sentryの準備

SentryのプラグインはこちらのGithubからもってきます。
今回は4.27を使います。
5.0はUE5用なのでこのあと記事にします。
プロジェクトは好きなテンプレート使ってOKです。
ただ、Sentryを呼び出したり拡張したりがし易いようにクラスをやサブシステム作ったりできるように
C++で作っておくと楽でーす。

こんな感じにプラグインを入れておきます

-MyGame
  -MyGame.uproject
  -Config
  -Content
  -Plugins
    -Sentry
      -Sentry.uplugin
      - :

そして、プロジェクトのbuild.csにも追記しておきます

-MyGame
PublicDependencyModuleNames.AddRange(new string[] { ..., "Sentry" });

その後プラグインが読み込まれたことを確認して
DSNを登録する箇所があるのでそこに必要なURLを入れます
URLに関しては登録したときに発行されるのでそちらを確認してください

sentry.PNG

■クラッシュポイント設定
クラッシュレポータエンドポイントの設定
クラッシュ レポーターとデバッグ ファイルが含まれるようになったので、UE4 はクラッシュをどこに送信するかを知る必要があります。
そのためには、"Client Keys" 設定ページにあります。

engine-dir\Engine\Programs\CrashReportClient\Config\DefaultEngine.ini

ここの
DataRouterUrl を変更します

それではそのへんの対応ができた
ってところでいきなりやると大変なので

サンプルプロジェクトがあるのでそれを使ってから
移植していくのが良いと思います。

それでは、サンプルプロジェクトからイベントとクラッシュをさせてみましょう

起動するとこんな画面になりメッセージやイベント、クラッシュが出ます
では
イベントの押してみますー
sentry4.PNG

Sentyの管理画面のissuesにイベントやクラッシュ報告が出ます

sentry5.PNG

イベント通知が来てますね!

イベントの中身を見るとどこで呼ばれたのか
何かしらの問題などの情報が見れます。
sentry6.PNG

さらに、登録者の情報や
ゲームのIDやバージョンなども登録できるので
ユーザー情報を保持するタイプのゲームの場合
どんなユーザーがどんなイベント、エラーを踏んだのかを追いかけることができます。
さらに、アプリのバージョンやエンジンのバージョンものせられるので
開発中のデバッグでもう修正されてるエラーの報告があっても無駄な調査をしなくて済みます。
sentry7.PNG

次はクラッシュさせてみます。

クラッシュのボタンを押すと
クラッシュレポートが出てきてー

sentry8.PNG

管理画面にクラッシュの報告が来てます。
sentry9.PNG

まず、クラッシュした端末の情報とどんなクラッシュなのか
GPUの情報も飛んできます

sentry10.PNG

次にエラー箇所なのですが
今回はぬるぽですねー。

sentry11.PNG

ちなみに、場所はコードにあるのですがここです

sentry12.PNG

コールスタックもちゃんと出てます!
sentry5.JPG

他にもAssertにも対応してますので、開発中のデバッグで
「どこで起きたかわからないバグ」を調査や
「どのプラットフォームで起きたのかわかりにくい」なども
この管理画面で絞ることができるので便利です。

UE5でも使えるのでぜひ簡単にエラー監視を導入したい方や会社さんで使ってみてください(ΦωΦ)

12
7
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
12
7