(一)什么是崩溃日志,从哪里能得到它:
iOS设备上的应用闪退时, *** 作系统会生成一个崩溃报告,也叫崩溃日志,保存在设备上,崩溃日志上有很多有用的信息,包括应用是什么情况下闪退的。通常,上面有每个正在执行线程的完整堆栈跟踪信息,所以你能从中了解到闪退发生时各线程都在做什么,并分辨出闪退发生在哪个线程上。
(二)获取崩溃日志的几种方法:
1、当用户抱怨闪退时,你可以要求他让设备与iTunes同步,设备与电脑上的iTunes Store同步后,会将崩溃日志保存在电脑上(路径:Mac OS X:~/Library/Logs/CrashReporter/MobileDevice/)到上述位置把崩溃日志下载下来,然后通过电子邮件发送给你;用这个方法获取崩溃日志时,你必需尽量获取用户设备生成的所有崩溃日志。因为崩溃日志越多,就越容易诊断问题所在。
2、如果你装了Xcode,也能很容易通过Xcode从你的设备上获得崩溃日志;将iOS设备连接到电脑上,然后打开Xcode;从菜单栏上选择 Window菜单, 然后选择 Organizer (快捷方式是 Shift-CMD-2)在Organizer 窗口上, 选中 Devices 标签栏,在左侧的导航面板上,选中Device Logs;LIBRARY下面的Device Logs是你所有设备(曾经连接到Xcode的)的日志;每个设备下面的Device Logs是对应设备的日志。
3、应用提交到App Store后,你也能从 iTunes Connect 获取到用户的崩溃日志,登录到 iTunes Connect 上,选择 Manage Your Applications, 点击相应的应用,点击应用图标下面的View Details按钮, 然后点击右栏Links部分的 Crash Reports;如果没有崩溃日志,试试点击Refresh按钮刷新一下。如果你的应用用户量还不多,或者刚上架不久,iTunes Connect账号上也可能还没有任何崩溃日志;如果有的话你就会看到不同iOS版本用户下的崩溃信息。
4、使用工具来获取应用程序崩溃日志,现在小编来推荐一款好用的工具(名称:Bugly,网址:>
有很多种文件夹。一般来说,WINDOWS 系统下,通常都在 logs、log、LogFiles 目录下面(当然了,如果安装了其他的应用软件,也会有它们自己的 log 日志目录);UNIX/Linux 系统下面,事件日志一般在 /var/log 下面。这些 log 文件都是文本文件,可供系统管理员查看,以便分析系统出错信息时使用。
首先是下载所需要的包,然后在\logback-112\logback-classic\src\main\java\ch\qos\logback\classic\db\script下你能看到创建日志所需要的的建表脚本
然后就是配置了。
首先是报错的配置,也是网上找资料别人给的配置……
复制代码
<!-- 将日志存储到oracle数据库中 -->
<appender name="db-classic-oracle" class="chqoslogbackclassicdbDBAppender">
<connectionSource class="chqoslogbackcoredbDriverManagerConnectionSource">
<dataSource class="commchangev2c3p0ComboPooledDataSource">
<driverClassName>oraclejdbcdriverOracleDriver</driverClassName>
<url>jdbc:oracle:thin:@localhost:1521:ZYD</url>
<user>scott</user>
<password>tiger</password>
</dataSource>
</connectionSource>
</appender>
复制代码
运行一下,你会发现会报这个错误:DBAppender cannot function if the JDBC driver does not support getGeneratedKeys method and without a specific SQL dialect
然后把气冲冲的加上了方言……
复制代码
<!-- 将日志存储到oracle数据库中 -->
<appender name="db-classic-oracle" class="chqoslogbackclassicdbDBAppender">
<connectionSource class="chqoslogbackcoredbDriverManagerConnectionSource">
<dataSource class="commchangev2c3p0ComboPooledDataSource">
<driverClassName>oraclejdbcdriverOracleDriver</driverClassName>
<url>jdbc:oracle:thin:@localhost:1521:ZYD</url>
<user>scott</user>
<password>tiger</password>
<sqlDialect class="chqoslogbackcoredbdialectOracleDialect" />
</dataSource>
</connectionSource>
</appender>
复制代码
结果还是不对!
最后跑去Stack OwerFlow网站看了一下那帮外国程序员是怎么解决的,终于在看了几个帮助之后
发现了……
<driverClassName>oraclejdbcdriverOracleDriver</driverClassName>
原来还有它的错,正确的应该是
复制代码
<!-- 将日志存储到oracle数据库中 -->
<appender name="db-classic-oracle" class="chqoslogbackclassicdbDBAppender">
<connectionSource class="chqoslogbackcoredbDriverManagerConnectionSource">
<dataSource class="commchangev2c3p0ComboPooledDataSource">
<driverClass>oraclejdbcdriverOracleDriver</driverClass>
<url>jdbc:oracle:thin:@localhost:1521:ZYD</url>
<user>scott</user>
<password>tiger</password>
<sqlDialect class="chqoslogbackcoredbdialectOracleDialect" />
</dataSource>
</connectionSource>
</appender>
复制代码
再试一下,终于成功了!
以上就是关于如何捕获应用程序日志全部的内容,包括:如何捕获应用程序日志、C++日志记录类以及日志记录程序、电脑中程序事件日志在哪里找呀等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)