ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

Micrcroft App Center

2021-12-30 09:31:53  阅读:242  来源: 互联网

标签:Center Crashes 可以 Micrcroft new App 这里


Micrcroft App Center

介绍

App Center主要用到的是异常的捕获和事件分析,可以在代码中埋点,把想要的事件记录传到App Center,可以在有异常的时候吧异常的内容发送,和在程序崩溃时把崩溃信息记录下来,当应用再次启动时,会把上次记录好的崩溃信息传回, 这里比较好的一点是支持附件的上传,并且这里的免费版可以保存最多90天。下面是官方介绍:
开发人员可以使用 App Center 来生成、测试和分发应用程序。部署应用后,开发人员可以使用分析和诊断服务监视应用的状态和使用情况。
相关具体内容可以参考官方文档Visual Studio App Center Docs

首先用账号登录进去,然后在主页可以看到所有的应用菜单,add new可以新建应用或者组织。
在这里插入图片描述

新建一个组织

输入组织的名字就可以创建成功,在这里可以看到组织里有apps,就是组织的所有应用。然后可以对人员管理:合作者,团队,分配组。最后可以最组织进行管理,这里的设置可以设置组织名和组织的url,图标等。这里还有付费和云服务等功能,具体看官方文档。
在这里插入图片描述

新建一个应用

输入应用名称,选择图标,设置发行类型,所有者,操作系统和平台。创建成功的所有应用都会在all apps显示。进去可以看到可以对应用进行菜单栏。这里演示了一些常用的基本操作。
在这里插入图片描述

概述Overview

首先需要NuGet包到解决方案中,安装Microsoft.AppCenter.Analytics和Microsoft.AppCenter.Crashes包,这两个一个是采集事件埋点一个是崩溃日志报告。更多的学习资料和相关API都在官方帮助文档查到。
在这里插入图片描述
这里是开启App Center。

	string userId = System.Net.Dns.GetHostName();
#if DEBUG
    userId += "-DEBUG";
#endif
    AppCenter.SetUserId(userId);
    AppCenter.SetCountryCode("CN");
    AppCenter.Start(Constants.AppSecret,    // 这里我作为常量存起来了,在网页上的guid---"e6e7e15a-4dd5-4de9-a8df-f09310853959"
    	typeof(Analytics),
    	typeof(Crashes));

分析Analytics

这里可以看到分析的Overview显示了活跃的用户的折线图,每天访问的用户,会话的时间段,使用的设备,操作系统。
在这里插入图片描述

还可以看到用户的国家信息和语言,还有应用的版本使用情况。
在这里插入图片描述

这里的Events是对事件进行分析。点进去可以看到具体的信息。
在这里插入图片描述
在这里插入图片描述

这里的Log flow是所有会话的信息,当app开启会话一直到结束所有的事件信息都会在这里显示。时间是UTC时间。
在这里插入图片描述

这里是对事件进行分析上传。

Analytics.TrackEvent("Search", new Dictionary<string, string>() { { "pageName", text } });
Analytics.TrackEvent("Use", new Dictionary<string, string>() { { "pageName", this.GetType().Name } });

诊断Diagnostics

这里的Issues是所有的问题,这里可以分为让应用崩溃的异常Crashes的和记录的异常Errors。
在这里插入图片描述

点进去可以查看到异常的详细信息,点击报告Reports可以查看传过来的用户信息和异常的日志附件,下载就可以查看异常日志。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

这里是对崩溃记录上传的附件,直接把最新的日志上传回去了。

Crashes.GetErrorAttachments = (ErrorReport) =>
{
	DirectoryInfo directoryInfo = new DirectoryInfo(AppDomain.CurrentDomain.BaseDirectory + "\\Log\\Error");
	var fileInfos = directoryInfo.GetFiles();
    Array.Sort(fileInfos, delegate (FileInfo x, FileInfo y) { return y.CreationTime.CompareTo(x.CreationTime); });

    Logger.Log.Error(string.Format("program crashes, last start time {{{0}}}, error timr {{{1}}}, {2}", ErrorReport.AppStartTime.ToLocalTime(), ErrorReport.AppErrorTime.ToOffset(new TimeSpan(8, 0, 0)), ErrorReport.StackTrace));

    return new ErrorAttachmentLog[]
    {
        ErrorAttachmentLog.AttachmentWithBinary(File.ReadAllBytes(fileInfos[0].FullName),fileInfos[0].Name,"text")
    };
};

这里是在异常日志中把异常信息上传。

public static void Error(object message)
{
    if (message is Exception exception)
    {
        Crashes.TrackError(exception);
    }
    else
    {
        Crashes.TrackError(new Exception(message.ToString()));
    }
    LogManager.GetLogger(GetCurrentMethodFullName()).Error(message);
}

public static void Error(object message, Exception exception)
{
    Crashes.TrackError(exception);
    LogManager.GetLogger(GetCurrentMethodFullName()).Error(message, exception);
}

标签:Center,Crashes,可以,Micrcroft,new,App,这里
来源: https://blog.csdn.net/qq_41863100/article/details/122229060

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有