更新时间:2022-09-07 GMT+08:00

日志分析

日志路径

OBS Android SDK的日志路径是通过LogConfigurator.setLogFileDir指定的,默认存放于SD卡的logs目录下。日志文件名为:OBS-SDK.log。

日志内容格式

SDK日志格式为:日志时间|线程号|日志级别|日志内容。示例如下:

2017-08-21 17:40:07 133|main|INFO |HttpClient cost 157 ms to apply http request
2017-08-21 17:40:07 133|main|INFO |Received expected response code: true
2017-08-21 17:40:07 133|main|INFO |expected code(s): [200, 204].

2017-08-21 17:40:06 820|main|INFO |Storage|1|HTTP+XML|ObsClient||||2017-08-21 17:40:05|2017-08-21 17:40:06|||0|
2017-08-21 17:40:07 136|main|INFO |Storage|1|HTTP+XML|setObjectAcl||||2017-08-21 17:40:06|2017-08-21 17:40:07|||0|
2017-08-21 17:40:07 137|main|INFO |ObsClient [setObjectAcl] cost 312 ms

日志级别

当系统出现问题需要定位且当前的日志无法满足要求时,可以通过修改日志的级别来获取更多的信息。其中TRACE日志信息最丰富,ERROR日志信息最少。可以通过LogConfigurator.setLogLevel设置日志级别。

具体说明见下表:

日志级别

说明

OBS Android SDK对应值

OFF

关闭级别,如果设置为这个级别,日志打印功能将被关闭。

LogConfigurator.OFF

TRACE

跟踪级别,如果设置为这个级别,将打印所有日志信息。通常不建议使用。

LogConfigurator.TRACE

DEBUG

调试级别,如果设置为这个级别,除了打印INFO级别以上的信息外,还将打印每次HTTP/HTTPS请求和响应的头信息,鉴权算法计算出的StringToSign信息等。

LogConfigurator.DEBUG

INFO

信息级别,如果设置为这个级别,除了打印WARN级别以上的信息外,还将打印HTTP/HTTPS请求的耗时时间,ObsClient接口的耗时时间等。

LogConfigurator.INFO

WARN

告警级别,如果设置为这个级别,除了打印ERROR级别以上的信息外,还将打印一些关键事件的信息,如重试请求超过最大次数等。

LogConfigurator.WARN

ERROR

错误级别,如果设置为这个级别,仅打印发生异常时的错误信息。

LogConfigurator.ERROR

日志无法生成

如发现无法生成日志,检查AndroidManifest.xml文件中是否加入了以下权限:

<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" /> 
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />