阅读832 返回首页    go 阿里云


API 数据源__准备数据源_用户指南_业务实时监控服务 ARMS-阿里云

用户可以通过API SDK直接推送数据到 ARMS,从而实现 ARMS 日志流入。

创建 SDKPush 数据源

  • 入口

sdkpush-ds-entry

  • 授权

ARMS会为用户创建一个AK/SK,用户可以通过这对AK/SK向ARMS中推送数据,请妥善保管。

sdkpush-ds-auth

  • 获取ak/sk

sdkpush-ds-create-aksk


  • 创建SDKPush数据源

sdkpush-ds-create


  • 数据源使用

sdkpush-ds-use

在程序中向 SDKPush 数据源推送数据
  • 引入 POM 依赖

    1. <dependency>
    2. <groupId>com.aliyun.openservices</groupId>
    3. <artifactId>aliyun-log</artifactId>
    4. <version>0.6.6</version>
    5. </dependency>
  • SDK 推送数据示例

    1. int logGroupSize = 1000;//建议100-2000,每个batch发送数据上限
    2. String accessKeyId = "XXX"; //填写ARMS中获取AK
    3. String accessKeySecret = "XXX"; //填写ARMS中获取SK
    4. String endpoint = "XXX";//如cn-qingdao.log.aliyuncs.com
    5. String project = "XXX"; //例如proj-arms-e4de52c26fca9d24aac2c99392427f2
    6. String logstore = "XXX";//例如logstore-5071ab07abf2f5af138ba151fcbad2;
    7. DateFormat dateFormat = new java.text.SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
    8. List<String> examples = new ArrayList<String>();
    9. examples.add("|c0a895e114526786450161001d1ed9|9|EADS|BIZ-MONITOR|0|类目=男装&区域=杭州&eventTeyp=1&性别=1&价格=2140|");
    10. examples.add("|c0a895e114526786450161001d1ed9|9|EADS|BIZ-MONITOR|0|类目=家居&区域=上海&eventTeyp=3&性别=0&价格=8305|");
    11. examples.add("|c0a895e114526786450161001d1ed9|9|EADS|BIZ-MONITOR|0|类目=食品&区域=深圳&eventTeyp=3&性别=1&价格=7121|");
    12. examples.add("|c0a895e114526786450161001d1ed9|9|EADS|BIZ-MONITOR|0|类目=男装&区域=上海&eventTeyp=3&性别=1&价格=2917|");
    13. examples.add("|c0a895e114526786450161001d1ed9|9|EADS|BIZ-MONITOR|0|类目=食品&区域=上海&eventTeyp=1&性别=1&价格=4285|");
    14. examples.add("|c0a895e114526786450161001d1ed9|9|EADS|BIZ-MONITOR|0|类目=男装&区域=杭州&eventTeyp=3&性别=1&价格=7864|");
    15. examples.add("|c0a895e114526786450161001d1ed9|9|EADS|BIZ-MONITOR|0|类目=女装&区域=杭州&eventTeyp=5&性别=0&价格=2983|");
    16. examples.add("|c0a895e114526786450161001d1ed9|9|EADS|BIZ-MONITOR|0|类目=食品&区域=深圳&eventTeyp=5&性别=1&价格=3201|");
    17. // 构建一个客户端实例
    18. Client client = new Client(endpoint, accessKeyId, accessKeySecret);
    19. // 连续发送10个数据包,每个数据包有10条日志
    20. long count = 0;
    21. long total = 0;
    22. long beg_time = System.currentTimeMillis();
    23. for (;;) {
    24. long currentTime = System.currentTimeMillis();
    25. String formatedTime = dateFormat.format(new Date(currentTime));
    26. Vector<LogItem> logGroup = new Vector<LogItem>();
    27. for (int i = 0; i < logGroupSize; i++) {
    28. LogItem logItem = new LogItem((int) (new Date().getTime() / 1000));
    29. logItem.PushBack("content", formatedTime + examples.get(i%examples.size()) + UUID.randomUUID());
    30. l ogGroup.add(logItem);
    31. }
    32. count = count + logGroupSize;
    33. long dis = (currentTime - beg_time)/1000;
    34. if( dis >= 30){
    35. total = total + count;
    36. beg_time = currentTime;
    37. count = 0;
    38. }
    39. PutLogsRequest req2 = new PutLogsRequest(project, logstore,"","", logGroup);
    40. client.PutLogs(req2);
  • 重要参数说明
参数 说明
accessKeyId 写入数据时的秘钥id
accessKeySecret 吸入数据时的秘钥密码
project 写入数据的project id
logstore 写入数据的logstore id

注意:project id和logstore id唯一确定一个数据源

最后更新:2016-12-09 14:10:08

  上一篇:go LogHub数据源__准备数据源_用户指南_业务实时监控服务 ARMS-阿里云
  下一篇:go 监控任务概述__创建监控任务_用户指南_业务实时监控服务 ARMS-阿里云