全部产品
弹性计算 会员服务 网络 安全 移动云 数加·大数据分析及展现 数加·大数据应用 管理与监控 云通信 阿里云办公 培训与认证 智能硬件 ET大脑
存储与CDN 数据库 域名与网站(万网) 应用服务 数加·人工智能 数加·大数据基础服务 互联网中间件 视频服务 开发者工具 解决方案 物联网 更多
业务实时监控服务 ARMS

SDK for Python

更新时间:2018-03-27 11:31:14

本文为 Python 示例。

安装 Python 环境

Python SDK 是一个纯 Python 的库,支持所有运行 Python 的操作系统,目前主要为 Linux 和 Windows。

请按以下步骤安装 Python:

  1. 下载并安装最新的 Python 2 安装包

    目前,Python SDK 支持 Python 2.6/2.7环境。可以运行python -V查询当前 Python 版本。

  2. 下载并安装 Python 的包管理工具 pip。

    完成 pip 安装后,你可以运行pip -V确认 pip 是否安装成功和查看当前 pip 版本。

安装 Python SDK 的依赖库

Python SDK 依赖于一组第三方的 Python 库。在使用该 SDK 前必须安装好以下依赖库:

  • Google Protocol Buffer:Python SDK 依赖于 Protocol Buffer 协议向服务端写入日志。执行以下命令进行安装:

    sudo pip install protobuf==2.5.0

    pip 安装 Protobuf 需要连接 Python Package Index 网站,请确保机器能够访问该网站。如果因为网络问题无法安装成功,可以考虑从 Protocol Buffer 的 Github 官方网站手动下载安装(具体安装步骤请参考下载包的 Readme 文档)。

  • Python-Requests:Python SDK 依赖于 Python-Requests 类进行 HTTP 通信。执行以下命令进行安装:

    sudo pip install requests

  • SimpleJson:Python SDK 依赖于 SimpleJson 处理 API 的 JSON 格式返回结果。执行以下命令进行安装:

    sudo pip install simplejson

安装 Python SDK

安装好上述环境后,需要下载 Python SDK。

  1. 从 GitHub 下载最新的 Python SDK 包。

  2. 解压完整下载的包到指定目录。

  3. 在解压后的目录运行以下命令安装 Python SDK。

    python setup.py install

开始一个 Python 程序

  1. #!/usr/bin/env python
  2. #encoding: utf-8
  3. import datetime
  4. from aliyun.log.logclient import LogClient
  5. from aliyun.log.logitem import LogItem
  6. from aliyun.log.putlogsrequest import PutLogsRequest
  7. def main():
  8. #endpoint: 数据写入存储所在区域
  9. #project,logstore: 构成基本数据存储目标
  10. #accessKeyId,accessKeySecret: 构成访问密钥
  11. #注意: 请用户根据实际情况填写
  12. endpoint = "cn-hangzhou.log.aliyuncs.com"
  13. project = "proj-arms-7dd6ecb06d21e02aed9eeb56b79e9f"
  14. logstore = "logstore-56f96ec5546fb6555ef97dd057acb4e9"
  15. accessKeyId = "utmxiro7BYtTLLxL"
  16. accessKeySecret = "PyjsffdlggBoYcrgpr69w023b9UcBH"
  17. logGroupSize = 10
  18. examples = []
  19. examples.append('|c0a895e114526786450161001d1ed9|9|EADS|BIZ-MONITOR|0|类目=男装&区域=杭州&eventTeyp=1&性别=1&价格=2140|')
  20. examples.append('|c0a895e114526786450161001d1ed9|9|EADS|BIZ-MONITOR|0|类目=家居&区域=上海&eventTeyp=3&性别=0&价格=8305|')
  21. examples.append('|c0a895e114526786450161001d1ed9|9|EADS|BIZ-MONITOR|0|类目=食品&区域=深圳&eventTeyp=3&性别=1&价格=7121|')
  22. examples.append('|c0a895e114526786450161001d1ed9|9|EADS|BIZ-MONITOR|0|类目=男装&区域=上海&eventTeyp=3&性别=1&价格=2917|')
  23. examples.append('|c0a895e114526786450161001d1ed9|9|EADS|BIZ-MONITOR|0|类目=食品&区域=上海&eventTeyp=1&性别=1&价格=4285|')
  24. examples.append('|c0a895e114526786450161001d1ed9|9|EADS|BIZ-MONITOR|0|类目=男装&区域=杭州&eventTeyp=3&性别=1&价格=7864|')
  25. examples.append('|c0a895e114526786450161001d1ed9|9|EADS|BIZ-MONITOR|0|类目=女装&区域=杭州&eventTeyp=5&性别=0&价格=2983|')
  26. examples.append('|c0a895e114526786450161001d1ed9|9|EADS|BIZ-MONITOR|0|类目=食品&区域=深圳&eventTeyp=5&性别=1&价格=3201|')
  27. # 构建一个client
  28. client = LogClient(endpoint, accessKeyId, accessKeySecret)
  29. for i in range(0, 10):
  30. logGroup = []
  31. for j in range(0, 10):
  32. logItem = LogItem()
  33. logItem.push_back("content", datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S') + examples[j % len(examples)])
  34. logGroup.append(logItem)
  35. req = PutLogsRequest(project, logstore, "", "", logGroup)
  36. client.put_logs(req)
  37. print "send data success"
  38. if __name__ == '__main__':
  39. main()

重要参数说明

参数 说明
endpoint 数据写入区域(endpoint 列表
accessKeyId 写入数据时的密钥 ID
accessKeySecret 写入数据时的密钥密码
project 写入数据的 Project ID
logstore 写入数据的 Logstore ID

注意:

  • ARMS 颁发的 accessKeyId、accessKeySecret 非用户阿里云 AK/SK,需要从 ARMS 获取,详情请查看 SDK 数据源配置
  • Project ID 和 Logstore ID 标识一个唯一的数据源。
本文导读目录