package com.volcengine.example.tls.demo;
import java.util.ArrayList;
import com.volcengine.model.tls.consumer.ConsumerConfig;
import com.volcengine.model.tls.exception.LogException;
import com.volcengine.model.tls.pb.PutLogRequest;
import com.volcengine.service.tls.consumer.Consumer;
import com.volcengine.service.tls.consumer.ConsumerImpl;
import com.volcengine.service.tls.consumer.LogProcessor;
public class ConsumerDemo implements LogProcessor {
public static void main(String[] args) throws LogException, InterruptedException {
ConsumerConfig config = new ConsumerConfig(System.getenv("VOLCENGINE_ENDPOINT"), System.getenv("VOLCENGINE_REGION"),
System.getenv("VOLCENGINE_ACCESS_KEY_ID"), System.getenv("VOLCENGINE_ACCESS_KEY_SECRET"), System.getenv("VOLCENGINE_TOKEN"));
config.setProjectID("your-project-id");
config.setTopicIDList(new ArrayList<String>(){{
config.setConsumerGroupName("java-consumer-group");
config.setConsumerName("java-consumer");
Consumer consumer = new ConsumerImpl(config, new ConsumerDemo());
public void process(String topicID, int shardID, PutLogRequest.LogGroupList logGroupList) {
System.out.println(topicID + " --- " + shardID);
System.out.println(logGroupList.getLogGroupsCount());
List<PutLogRequest.LogGroup> logGroups = logGroupList.getLogGroupsList();
for (PutLogRequest.LogGroup logGroup: logGroups) {
List<PutLogRequest.Log> logs = logGroup.getLogsList();
for (PutLogRequest.Log log: logs) {
System.out.println("*** Count = " + count + " ***");
List<PutLogRequest.LogContent> logContents = log.getContentsList();
for (PutLogRequest.LogContent logContent: logContents) {
System.out.println(logContent.getKey() + ": " + logContent.getValue());