android - Sentry 跟踪移动设备操作系统,设备 - 应该如何指定 header 才能使其正常工作?

标签 android ios django windows-phone sentry

我正在使用 Sentry 跟踪在三个不同平台上运行的移动应用程序的后端错误:iOS、Android、WindowsPhone。

Sentry 具有如下字段:deviceos。应该设置 HTTP 头中的哪些参数,以便 Sentry 解析它并匹配到这些字段?

我在后端使用 django。

例如 iOS 应用程序发送以下用户代理:AppName/100 CFNetwork/711.1.12 Darwin/14.0.0 我应该如何格式化它以便 Sentry 可以显示 os设备

最佳答案

如果您使用的是 Sentry-Android(我的库),您可以设置一个自定义捕获监听器来发送您想要的任何数据 - https://github.com/joshdholtz/sentry-android#set-a-listener-to-intercept-the-sentryeventbuilder-before-each-capture

下面的这个例子发送了 wifi 状态和一些随机标签,但你可以发送任何你想要的数据。

// CALL THIS BEFORE CALLING Sentry.init
// Sets a listener to intercept the SentryEventBuilder before 
// each capture to set values that could change state
Sentry.setCaptureListener(new SentryEventCaptureListener() {

    @Override
    public SentryEventBuilder beforeCapture(SentryEventBuilder builder) {

        // Needs permission - <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
        ConnectivityManager connManager = (ConnectivityManager) getSystemService(CONNECTIVITY_SERVICE);
        NetworkInfo mWifi = connManager.getNetworkInfo(ConnectivityManager.TYPE_WIFI);

        // Sets extra key if wifi is connected
        try {
            builder.getExtra().put("wifi", String.valueOf(mWifi.isConnected()));
            builder.getTags().put("tag_1", "value_1");
        } catch (JSONException e) {}

        return builder;
    }

});

如果您对此有任何疑问,请告诉我!

关于android - Sentry 跟踪移动设备操作系统,设备 - 应该如何指定 header 才能使其正常工作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29142544/

相关文章:

android - IllegalArgumentException : pointerIndex out of range from SwipeRefreshLayout

ios - uilabel sizetofit 不工作 uitableviewcell

ios - 网站和应用程序开发是否需要不同的开发人员?

python - 将用户特定字段添加到 Django REST Framework 序列化程序

android - 在 vuforia 增强现实应用程序中运行时选择 3d 模型

android - 使用 ConstraintLayout 作为 DialogFragment 的根布局时的奇怪行为

Android - 如何在 FirebaseMessagingService 类中使用 Realm(非 Activity )

ios - 无法解析基本的 JSON - iOS

python - Django Model.objects.all() 不显示在建议中

django - 为什么 Debug模式下的 app/admin false 给我服务器错误 500