全部产品
阿里云办公

SDK for Java

更新时间:2018-01-23 21:09:54

本文为 Java 示例。

引入 POM 依赖

  1. <dependency>
  2. <groupId>com.aliyun.openservices</groupId>
  3. <artifactId>aliyun-log</artifactId>
  4. <version>0.6.6</version>
  5. </dependency>

开始一个 Java 程序

  1. public class LogstashForJavaDemo {
  2. public static void main(String[] args) throws LogException {
  3. DateFormat dateFormat = new java.text.SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
  4. /**
  5. * endpoint: 数据写入存储所在区域
  6. * project,logstore: 构成基本数据存储目标
  7. * accessKeyId,accessKeySecret: 构成访问密钥
  8. *
  9. * 注意: 请用户根据实际情况填写
  10. */
  11. String endpoint = "cn-hangzhou.log.aliyuncs.com";
  12. String project = "proj-arms-7dd6ecb06d21e02aed9eeb56b79e9f";
  13. String logstore = "logstore-56f96ec5546fb6555ef97dd057acb4e9";
  14. String accessKeyId = "xxx";
  15. String accessKeySecret = "yyy";
  16. int logGroupSize = 10;// 建议100-2000,每个batch发送数据上限
  17. List<String> examples = new ArrayList<String>();
  18. examples.add("|c0a895e114526786450161001d1ed9|9|EADS|BIZ-MONITOR|0|类目=男装&区域=杭州&eventTeyp=1&性别=1&价格=2140|");
  19. examples.add("|c0a895e114526786450161001d1ed9|9|EADS|BIZ-MONITOR|0|类目=家居&区域=上海&eventTeyp=3&性别=0&价格=8305|");
  20. examples.add("|c0a895e114526786450161001d1ed9|9|EADS|BIZ-MONITOR|0|类目=食品&区域=深圳&eventTeyp=3&性别=1&价格=7121|");
  21. examples.add("|c0a895e114526786450161001d1ed9|9|EADS|BIZ-MONITOR|0|类目=男装&区域=上海&eventTeyp=3&性别=1&价格=2917|");
  22. examples.add("|c0a895e114526786450161001d1ed9|9|EADS|BIZ-MONITOR|0|类目=食品&区域=上海&eventTeyp=1&性别=1&价格=4285|");
  23. examples.add("|c0a895e114526786450161001d1ed9|9|EADS|BIZ-MONITOR|0|类目=男装&区域=杭州&eventTeyp=3&性别=1&价格=7864|");
  24. examples.add("|c0a895e114526786450161001d1ed9|9|EADS|BIZ-MONITOR|0|类目=女装&区域=杭州&eventTeyp=5&性别=0&价格=2983|");
  25. examples.add("|c0a895e114526786450161001d1ed9|9|EADS|BIZ-MONITOR|0|类目=食品&区域=深圳&eventTeyp=5&性别=1&价格=3201|");
  26. // 构建一个客户端实例
  27. Client client = new Client(endpoint, accessKeyId, accessKeySecret);
  28. // 连续发送10个数据包,每个数据包有10条日志
  29. long currentTime = System.currentTimeMillis();
  30. String formatedTime = dateFormat.format(new Date(currentTime));
  31. for (int i = 0; i < 10; i++) {
  32. Vector<LogItem> logGroup = new Vector<LogItem>();
  33. for (int j = 0; j < logGroupSize; j++) {
  34. LogItem logItem = new LogItem();
  35. logItem.PushBack("content", formatedTime + examples.get(j % examples.size()) + UUID.randomUUID());
  36. logGroup.add(logItem);
  37. }
  38. PutLogsRequest req = new PutLogsRequest(project, logstore, "", "", logGroup);
  39. client.PutLogs(req);
  40. }
  41. System.out.println("send data success");
  42. }
  43. }

重要参数说明

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

注意:

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