
com.ruijc.log.AliyunSLSLogger Maven / Gradle / Ivy
The newest version!
package com.ruijc.log;
import com.aliyun.openservices.log.Client;
import com.aliyun.openservices.log.common.LogContent;
import com.aliyun.openservices.log.common.LogItem;
import com.aliyun.openservices.log.common.QueriedLog;
import com.aliyun.openservices.log.exception.LogException;
import com.aliyun.openservices.log.request.GetLogsRequest;
import com.aliyun.openservices.log.request.PutLogsRequest;
import com.aliyun.openservices.log.response.GetLogsResponse;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
/**
* 使用阿里云的SLS框架的日志记录器
*
* @author Storezhang
*/
public class AliyunSLSLogger extends BaseLogger {
private final String project;
private final Client client;
public AliyunSLSLogger(String key, String secret, String endPoint, String project, String source) {
this.project = project;
client = new Client(endPoint, key, secret, source, true);
}
@Override
public void log(String store, String topic, String source, Object... args) {
List logs = new ArrayList();
LogItem item = new LogItem((int) (System.currentTimeMillis() / 1000));
for (int i = 0; i < args.length; ++i) {
item.PushBack(String.valueOf(args[i]), String.valueOf(args[++i]));
}
logs.add(item);
PutLogsRequest req = new PutLogsRequest(project, store, topic, source, logs);
try {
client.PutLogs(req);
} catch (LogException ex) {
//Logger.log(ex);
}
}
@Override
public List
© 2015 - 2025 Weber Informatics LLC | Privacy Policy