日志导出工具提供日志导出功能,将保存在对象存储OSS的日志导出到阿里云日志服务进行查询和分析。本文提供该工具在Windows环境安装、导出日志和查询日志的详细步骤。

版本说明

此工具适用于Python 2.6和2.7版本,Windows和Linux平台均可使用。

  • 版本:Version 1.0.0
  • 更新日期: 2016-04-20
  • 功能更新: 支持将队列或主题的操作日志从对象存储OSS导出到阿里云日志服务进行分析查询。

前提条件

说明 请参见准备流程完成前三个操作。

准备工作

此工具需安装protobuf和simplejson。下文提供Windows环境安装详细指导。

  1. 安装Python以及pip工具
    1. 进入Python官网下载2.7版本Python安装包。下载完成后,将Python安装至D:\Python27目录。
      说明 D:\Python27仅为示例。填写以实际环境为准。
    2. 鼠标右键我的电脑,在快捷菜单中选择属性 > 高级系统设置 > 环境变量 > PATH。在最后一行输入Python安装路径D:\Python27,单击确定
    3. 进入pip官网下载pip-8.1.2.tar.gz文件,下载完毕之后解压缩。
    4. 进入Windows命令行cmd(Windows7及以上版本可以使用更加人性化的Windows PowerShell ISE界面),进入到pip的解压缩目录,运行以下命令:
      python setup.py install
    5. 鼠标右键我的电脑,在快捷菜单中选择属性 > 高级系统设置 > 环境变量 > PATH。在最后面加上Python的Scripts目录(本例中为D:\Python27\Scripts),单击确定
  2. 安装protobuf和simplejson组件
    1. 执行以下命令安装protobuf:
      pip install protobuf
    2. 执行以下命令安装requests:
      pip install requests
    3. 执行以下命令安装simplejson:
      pip install simplejson

    如果上述命令报超时、连接不上等错误,请进行如下尝试:

    1. 进入HOME路径C:\Users$username创建.pip文件夹以及pip.conf文件。
    2. 打开pip.conf文件并输入以下内容:
      [global]
      index-url = http://pypi.v2ex.com/simple
    3. 配置完上述之后,重新运行安装protobuf和simplejson组件中的安装步骤,建议在命令后带上--default-timeout 100选项。

导出日志

此工具无需安装,下载工具包后,解压进入mnslog_export目录。

  • 执行以下命令导出日志:
    python2.7 mnslog_export.py --access_id=xxx --access_key=xxx --oss_host=xxx --log_bucket=xxx --sls_project=xxx --sls_logstore=xxx --sls_host=xxx --queue_name=xxx
  • 参数解析
    参数名 解析
    access_id 阿里云服务使用AccessKeyId,登录AccessKey管理页面查看。
    access_key 阿里云服务使用AccessKeySecret,登录AccessKey管理页面查看。
    oss_host OSS接入地址,请在控制台Bucket概览中获得该参数,例如杭州地区的地址是:oss-cn-hangzhou.aliyuncs.com。
    log_bucket 保存消息服务MNS日志的Bucket名称,请在控制台的日志管理页面查看。
    start_time 导日志的起始时间,例如201503270102,表示从2015年3月27号1点02分的日志开始。
    end_time 导日志的截至时间,不包含该时间,例如201603270302,表示到2016年3月27号3点02分截止。
    sls_host 日志服务的接入地址,请从日志服务官网获取,例如杭州地域的地址是:cn-hangzhou.sls.aliyun.com。
    sls_project 指定日志导入的日志服务Project名称,即在准备工作中创建的Project名称。
    sls_logstore 指定日志导入的日志服务Logstore名称,即在准备工作中创建的Logstore名称。
    queue_name 指定需要导入日志的队列名称,queue_name和topic_name只能选择一个。
    topic_name 指定需要导入日志的主题名称,queue_name和 topic_name只能选择一个。
  • 注意事项
    • 日志服务只支持导入7天内的日志,如果start_time太早,工具写日志服务提示失败。
    • 运行完mnslog_export.py成功上传了日志到SLS之后,强烈建议等待60s之后再进入日志服务控制台进行查询检索,否则可能会出现新上传的数据无法检索显示的情况。

查询日志

将日志从OSS导入日志服务1分钟后,即可在日志服务的控制台进行查询。

  • 单击LogStore右侧的查询分析进入日志查询页面。
  • 选择合适的时间范围,单击查询/分析将展示时间范围内所有日志。
  • 单击某个MessageId,即可搜索包含该MessageId的所有日志。