From 820682b38b9ecaea178c25710aa58c0092bd3c78 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=BC=A0=E4=BF=8A=E8=BE=89?= Date: Wed, 22 Dec 2021 16:06:24 +0800 Subject: [PATCH 1/3] =?UTF-8?q?=E4=BC=98=E5=8C=96kafka=E6=B6=88=E8=B4=B9?= =?UTF-8?q?=E6=97=A5=E5=BF=97=E8=BF=9B=E5=85=A5=E6=97=A5=E5=BF=97=E5=AF=B9?= =?UTF-8?q?=E5=BA=94index?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../server/client/ElasticLowerClient.java | 4 +- .../server/collect/KafkaLogCollect.java | 38 +++++++++++++++++-- 2 files changed, 36 insertions(+), 6 deletions(-) diff --git a/plumelog-server/src/main/java/com/plumelog/server/client/ElasticLowerClient.java b/plumelog-server/src/main/java/com/plumelog/server/client/ElasticLowerClient.java index d340dac7..fbc98aab 100644 --- a/plumelog-server/src/main/java/com/plumelog/server/client/ElasticLowerClient.java +++ b/plumelog-server/src/main/java/com/plumelog/server/client/ElasticLowerClient.java @@ -418,10 +418,10 @@ public class ElasticLowerClient extends AbstractServerClient { long endTime = System.currentTimeMillis(); requestStr.setEntity(null); if (response.getStatusLine().getStatusCode() == 200) { - logger.info("ElasticSearch commit! success,日志提交ES耗时:{}", endTime - startTime); + logger.info("ElasticSearch commit! success,日志提交index:{},耗时:{},条数:{}。", baseIndex, endTime - startTime, size); } else { String responseStr = EntityUtils.toString(response.getEntity()); - logger.error("ElasticSearch commit Failure! {},日志提交ES耗时:{}", responseStr, endTime - startTime); + logger.error("ElasticSearch commit Failure! {},日志提交index:{},耗时:{},条数:{}。", responseStr, baseIndex, endTime - startTime, size); } } catch (IOException e) { e.printStackTrace(); diff --git a/plumelog-server/src/main/java/com/plumelog/server/collect/KafkaLogCollect.java b/plumelog-server/src/main/java/com/plumelog/server/collect/KafkaLogCollect.java index d8db1d02..c5d1d76f 100644 --- a/plumelog-server/src/main/java/com/plumelog/server/collect/KafkaLogCollect.java +++ b/plumelog-server/src/main/java/com/plumelog/server/collect/KafkaLogCollect.java @@ -1,17 +1,21 @@ package com.plumelog.server.collect; +import com.alibaba.fastjson.JSON; import com.plumelog.core.client.AbstractClient; import com.plumelog.core.constant.LogMessageConstant; +import com.plumelog.core.dto.RunLogMessage; +import com.plumelog.server.InitConfig; import com.plumelog.server.client.ElasticLowerClient; +import com.plumelog.server.util.IndexUtil; import org.apache.kafka.clients.consumer.ConsumerRecords; import org.apache.kafka.clients.consumer.KafkaConsumer; import org.slf4j.LoggerFactory; import org.springframework.context.ApplicationEventPublisher; +import java.text.ParseException; +import java.text.SimpleDateFormat; import java.time.Duration; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.List; +import java.util.*; /** * className:KafkaLogCollect @@ -63,7 +67,33 @@ public class KafkaLogCollect extends BaseLogCollect { logger.error("get logs from kafka failed! ", e); } if (logList.size() > 0) { - super.sendLog(super.getRunLogIndex(), logList); + Map> procMapList = new HashMap<>(); + for (int i = 0; i < logList.size(); i++) { + String log = logList.get(i); + RunLogMessage runLogMessage = JSON.parseObject(log, RunLogMessage.class); + String dateTime = runLogMessage.getDateTime(); + + SimpleDateFormat sf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.SSS"); + Date date = new Date(); + try { + date = sf.parse(dateTime); + } catch (ParseException e) { + e.printStackTrace(); + } + + String baseIndex = ""; + if ("day".equals(InitConfig.ES_INDEX_MODEL)) { + baseIndex = IndexUtil.getRunLogIndex(date.getTime()); + } else { + baseIndex = IndexUtil.getRunLogIndexWithHour(date.getTime()); + } + List stringList = procMapList.getOrDefault(baseIndex,new ArrayList()); + stringList.add(log); + procMapList.put(baseIndex,stringList); + } + procMapList.forEach((key, value) -> { + super.sendLog(key, value); + }); publisherMonitorEvent(logList); } -- Gitee From fcf1ff29d900e132131287728cb9b5911f425b8c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=BC=A0=E4=BF=8A=E8=BE=89?= Date: Wed, 22 Dec 2021 16:31:23 +0800 Subject: [PATCH 2/3] =?UTF-8?q?=E5=8F=AF=E9=85=8D=E7=BD=AEkafka=E6=B6=88?= =?UTF-8?q?=E8=B4=B9=E6=97=A5=E5=BF=97=E8=BF=9B=E5=85=A5=E6=97=A5=E5=BF=97?= =?UTF-8?q?=E5=AF=B9=E5=BA=94index?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/plumelog/server/InitConfig.java | 1 + .../plumelog/server/client/ClientConfig.java | 3 + .../server/collect/KafkaLogCollect.java | 54 +++++++++-------- .../src/main/resources/application.properties | 58 ++++++++++--------- 4 files changed, 63 insertions(+), 53 deletions(-) diff --git a/plumelog-server/src/main/java/com/plumelog/server/InitConfig.java b/plumelog-server/src/main/java/com/plumelog/server/InitConfig.java index 2dec1f34..40c12768 100644 --- a/plumelog-server/src/main/java/com/plumelog/server/InitConfig.java +++ b/plumelog-server/src/main/java/com/plumelog/server/InitConfig.java @@ -23,6 +23,7 @@ public class InitConfig { public static String ES_REFRESH_INTERVAL = "10s"; public static String ES_INDEX_MODEL = "day"; public static String ES_INDEX_ZONE_ID = "GMT+8"; + public static String LOG_SAVEINDEX_TYPE = "his"; public static String restUserName = ""; public static String restPassWord = ""; public static String restUrl = ""; diff --git a/plumelog-server/src/main/java/com/plumelog/server/client/ClientConfig.java b/plumelog-server/src/main/java/com/plumelog/server/client/ClientConfig.java index 2518c1e4..9b1c8d4c 100644 --- a/plumelog-server/src/main/java/com/plumelog/server/client/ClientConfig.java +++ b/plumelog-server/src/main/java/com/plumelog/server/client/ClientConfig.java @@ -89,6 +89,8 @@ public class ClientConfig implements InitializingBean { private String indexTypeModel; @Value("${plumelog.es.indexType.zoneId:GMT+8}") private String indexTypeZoneId; + @Value("${plumelog.es.logSaveindexType:his}") + private String logSaveindexType; @Value("${plumelog.redis.redisHost:}") @@ -288,6 +290,7 @@ public class ClientConfig implements InitializingBean { InitConfig.keepDays = this.keepDays; InitConfig.traceKeepDays = this.traceKeepDays; InitConfig.maxShards=this.maxShards; + InitConfig.LOG_SAVEINDEX_TYPE=this.logSaveindexType; logger.info("server run model:" + this.model); logger.info("maxSendSize:" + this.maxSendSize); diff --git a/plumelog-server/src/main/java/com/plumelog/server/collect/KafkaLogCollect.java b/plumelog-server/src/main/java/com/plumelog/server/collect/KafkaLogCollect.java index c5d1d76f..2d9c8bc7 100644 --- a/plumelog-server/src/main/java/com/plumelog/server/collect/KafkaLogCollect.java +++ b/plumelog-server/src/main/java/com/plumelog/server/collect/KafkaLogCollect.java @@ -29,12 +29,12 @@ public class KafkaLogCollect extends BaseLogCollect { private AbstractClient redisClient; private KafkaConsumer kafkaConsumer; - public KafkaLogCollect(ElasticLowerClient elasticLowerClient, KafkaConsumer kafkaConsumer, ApplicationEventPublisher applicationEventPublisher,AbstractClient redisClient) { + public KafkaLogCollect(ElasticLowerClient elasticLowerClient, KafkaConsumer kafkaConsumer, ApplicationEventPublisher applicationEventPublisher, AbstractClient redisClient) { super.elasticLowerClient = elasticLowerClient; this.kafkaConsumer = kafkaConsumer; this.kafkaConsumer.subscribe(Arrays.asList(LogMessageConstant.LOG_KEY, LogMessageConstant.LOG_KEY_TRACE)); super.applicationEventPublisher = applicationEventPublisher; - super.redisClient=redisClient; + super.redisClient = redisClient; logger.info("kafkaConsumer subscribe ready!"); logger.info("sending log ready!"); } @@ -67,33 +67,37 @@ public class KafkaLogCollect extends BaseLogCollect { logger.error("get logs from kafka failed! ", e); } if (logList.size() > 0) { - Map> procMapList = new HashMap<>(); - for (int i = 0; i < logList.size(); i++) { - String log = logList.get(i); - RunLogMessage runLogMessage = JSON.parseObject(log, RunLogMessage.class); - String dateTime = runLogMessage.getDateTime(); + if ("his".equals(InitConfig.LOG_SAVEINDEX_TYPE)) { + Map> procMapList = new HashMap<>(); + for (int i = 0; i < logList.size(); i++) { + String log = logList.get(i); + RunLogMessage runLogMessage = JSON.parseObject(log, RunLogMessage.class); + String dateTime = runLogMessage.getDateTime(); - SimpleDateFormat sf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.SSS"); - Date date = new Date(); - try { - date = sf.parse(dateTime); - } catch (ParseException e) { - e.printStackTrace(); - } + SimpleDateFormat sf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.SSS"); + Date date = new Date(); + try { + date = sf.parse(dateTime); + } catch (ParseException e) { + e.printStackTrace(); + } - String baseIndex = ""; - if ("day".equals(InitConfig.ES_INDEX_MODEL)) { - baseIndex = IndexUtil.getRunLogIndex(date.getTime()); - } else { - baseIndex = IndexUtil.getRunLogIndexWithHour(date.getTime()); + String baseIndex = ""; + if ("day".equals(InitConfig.ES_INDEX_MODEL)) { + baseIndex = IndexUtil.getRunLogIndex(date.getTime()); + } else { + baseIndex = IndexUtil.getRunLogIndexWithHour(date.getTime()); + } + List stringList = procMapList.getOrDefault(baseIndex, new ArrayList()); + stringList.add(log); + procMapList.put(baseIndex, stringList); } - List stringList = procMapList.getOrDefault(baseIndex,new ArrayList()); - stringList.add(log); - procMapList.put(baseIndex,stringList); + procMapList.forEach((key, value) -> { + super.sendLog(key, value); + }); + } else { + super.sendLog(super.getRunLogIndex(), logList); } - procMapList.forEach((key, value) -> { - super.sendLog(key, value); - }); publisherMonitorEvent(logList); } diff --git a/plumelog-server/src/main/resources/application.properties b/plumelog-server/src/main/resources/application.properties index 34bc5e56..8c4393b6 100644 --- a/plumelog-server/src/main/resources/application.properties +++ b/plumelog-server/src/main/resources/application.properties @@ -7,75 +7,77 @@ spring.mvc.view.suffix=.html spring.mvc.static-path-pattern=/plumelog/** spring.boot.admin.context-path=admin -#值为4种 redis,kafka,rest,restServer -#redis 表示用redis当队列 -#kafka 表示用kafka当队列 -#rest 表示从rest接口取日志 -#restServer 表示作为rest接口服务器启动 -#ui 表示单独作为ui启动 -#lite 简易模式启动不需要配置redis等 +#\u503C\u4E3A4\u79CD redis,kafka,rest,restServer +#redis \u8868\u793A\u7528redis\u5F53\u961F\u5217 +#kafka \u8868\u793A\u7528kafka\u5F53\u961F\u5217 +#rest \u8868\u793A\u4ECErest\u63A5\u53E3\u53D6\u65E5\u5FD7 +#restServer \u8868\u793A\u4F5C\u4E3Arest\u63A5\u53E3\u670D\u52A1\u5668\u542F\u52A8 +#ui \u8868\u793A\u5355\u72EC\u4F5C\u4E3Aui\u542F\u52A8 +#lite \u7B80\u6613\u6A21\u5F0F\u542F\u52A8\u4E0D\u9700\u8981\u914D\u7F6Eredis\u7B49 plumelog.model=redis #plumelog.lite.log.path=/Users/chenlongfei/lucene -#如果使用kafka,启用下面配置 +#\u5982\u679C\u4F7F\u7528kafka,\u542F\u7528\u4E0B\u9762\u914D\u7F6E #plumelog.kafka.kafkaHosts=172.16.247.143:9092,172.16.247.60:9092,172.16.247.64:9092 #plumelog.kafka.kafkaGroupName=logConsumer -#队列redis地址,model配置redis集群模式,哨兵模式用逗号隔开,队列redis不支持集群模式 +#\u961F\u5217redis\u5730\u5740\uFF0Cmodel\u914D\u7F6Eredis\u96C6\u7FA4\u6A21\u5F0F\uFF0C\u54E8\u5175\u6A21\u5F0F\u7528\u9017\u53F7\u9694\u5F00\uFF0C\u961F\u5217redis\u4E0D\u652F\u6301\u96C6\u7FA4\u6A21\u5F0F plumelog.queue.redis.redisHost=127.0.0.1:6379 -#如果使用redis有密码,启用下面配置 +#\u5982\u679C\u4F7F\u7528redis\u6709\u5BC6\u7801,\u542F\u7528\u4E0B\u9762\u914D\u7F6E #plumelog.queue.redis.redisPassWord=123456 #plumelog.queue.redis.redisDb=0 -#哨兵模式需要配置的 +#\u54E8\u5175\u6A21\u5F0F\u9700\u8981\u914D\u7F6E\u7684 #plumelog.queue.redis.sentinel.masterName=myMaster -#管理端redis地址 ,集群用逗号隔开,不配置将和队列公用 +#\u7BA1\u7406\u7AEFredis\u5730\u5740 \uFF0C\u96C6\u7FA4\u7528\u9017\u53F7\u9694\u5F00\uFF0C\u4E0D\u914D\u7F6E\u5C06\u548C\u961F\u5217\u516C\u7528 #plumelog.redis.redisHost=127.0.0.1:6379 -#如果使用redis有密码,启用下面配置 +#\u5982\u679C\u4F7F\u7528redis\u6709\u5BC6\u7801,\u542F\u7528\u4E0B\u9762\u914D\u7F6E #plumelog.redis.redisPassWord=123456 #plumelog.redis.redisDb=0 -#哨兵模式需要配置的 +#\u54E8\u5175\u6A21\u5F0F\u9700\u8981\u914D\u7F6E\u7684 #plumelog.redis.sentinel.masterName=myMaster -#如果使用rest,启用下面配置 +#\u5982\u679C\u4F7F\u7528rest,\u542F\u7528\u4E0B\u9762\u914D\u7F6E #plumelog.rest.restUrl=http://127.0.0.1:8891/getlog #plumelog.rest.restUserName=plumelog #plumelog.rest.restPassWord=123456 -#redis解压缩模式,开启后不消费非压缩的队列 +#redis\u89E3\u538B\u7F29\u6A21\u5F0F\uFF0C\u5F00\u542F\u540E\u4E0D\u6D88\u8D39\u975E\u538B\u7F29\u7684\u961F\u5217 #plumelog.redis.compressor=true -#elasticsearch相关配置,Hosts支持携带协议,如:http、https +#elasticsearch\u76F8\u5173\u914D\u7F6E\uFF0CHosts\u652F\u6301\u643A\u5E26\u534F\u8BAE\uFF0C\u5982\uFF1Ahttp\u3001https plumelog.es.esHosts=127.0.0.1:8200 #plumelog.es.shards=5 #plumelog.es.replicas=0 #plumelog.es.refresh.interval=30s -#日志索引建立方式day表示按天、hour表示按照小时 +#\u65E5\u5FD7\u7D22\u5F15\u5EFA\u7ACB\u65B9\u5F0Fday\u8868\u793A\u6309\u5929\u3001hour\u8868\u793A\u6309\u7167\u5C0F\u65F6 #plumelog.es.indexType.model=day #plumelog.es.maxShards=100000 -#ES设置密码,启用下面配置 +#ES\u8BBE\u7F6E\u5BC6\u7801,\u542F\u7528\u4E0B\u9762\u914D\u7F6E #plumelog.es.userName=elastic #plumelog.es.passWord=elastic -#是否信任自签证书 +#\u662F\u5426\u4FE1\u4EFB\u81EA\u7B7E\u8BC1\u4E66 #plumelog.es.trustSelfSigned=true -#是否hostname验证 +#\u662F\u5426hostname\u9A8C\u8BC1 #plumelog.es.hostnameVerification=false +#\u65E5\u5FD7\u4FDD\u5B58\u7D22\u5F15\u7C7B\u578Bcur:\u5F53\u524D\u7D22\u5F15,his:\u65E5\u5FD7\u5BF9\u5E94\u65F6\u95F4\u7D22\u5F15 +plumelog.es.logSaveindexType=his -#单次拉取日志条数 +#\u5355\u6B21\u62C9\u53D6\u65E5\u5FD7\u6761\u6570 plumelog.maxSendSize=100 -#拉取时间间隔,kafka不生效 +#\u62C9\u53D6\u65F6\u95F4\u95F4\u9694\uFF0Ckafka\u4E0D\u751F\u6548 plumelog.interval=100 -#plumelog-ui的地址 如果不配置,报警信息里不可以点连接 +#plumelog-ui\u7684\u5730\u5740 \u5982\u679C\u4E0D\u914D\u7F6E\uFF0C\u62A5\u8B66\u4FE1\u606F\u91CC\u4E0D\u53EF\u4EE5\u70B9\u8FDE\u63A5 plumelog.ui.url=http://demo.plumelog.com -#管理密码,手动删除日志的时候需要输入的密码 +#\u7BA1\u7406\u5BC6\u7801\uFF0C\u624B\u52A8\u5220\u9664\u65E5\u5FD7\u7684\u65F6\u5019\u9700\u8981\u8F93\u5165\u7684\u5BC6\u7801 admin.password=123456 -#日志保留天数,配置0或者不配置默认永久保留 +#\u65E5\u5FD7\u4FDD\u7559\u5929\u6570,\u914D\u7F6E0\u6216\u8005\u4E0D\u914D\u7F6E\u9ED8\u8BA4\u6C38\u4E45\u4FDD\u7559 admin.log.keepDays=30 -#链路保留天数,配置0或者不配置默认永久保留 +#\u94FE\u8DEF\u4FDD\u7559\u5929\u6570,\u914D\u7F6E0\u6216\u8005\u4E0D\u914D\u7F6E\u9ED8\u8BA4\u6C38\u4E45\u4FDD\u7559 admin.log.trace.keepDays=30 -#登录配置,配置后会有登录界面 +#\u767B\u5F55\u914D\u7F6E\uFF0C\u914D\u7F6E\u540E\u4F1A\u6709\u767B\u5F55\u754C\u9762 #login.username=admin #login.password=admin \ No newline at end of file -- Gitee From b60d84b146b3cbae0a1a9de28f060275d98dfec6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=BC=A0=E4=BF=8A=E8=BE=89?= Date: Wed, 22 Dec 2021 16:41:13 +0800 Subject: [PATCH 3/3] =?UTF-8?q?=E5=8F=AF=E9=85=8D=E7=BD=AEkafka=E6=B6=88?= =?UTF-8?q?=E8=B4=B9=E6=97=A5=E5=BF=97=E8=BF=9B=E5=85=A5=E6=97=A5=E5=BF=97?= =?UTF-8?q?=E5=AF=B9=E5=BA=94index?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/resources/application.properties | 58 +++++++++---------- 1 file changed, 29 insertions(+), 29 deletions(-) diff --git a/plumelog-server/src/main/resources/application.properties b/plumelog-server/src/main/resources/application.properties index 8c4393b6..0d96661d 100644 --- a/plumelog-server/src/main/resources/application.properties +++ b/plumelog-server/src/main/resources/application.properties @@ -7,77 +7,77 @@ spring.mvc.view.suffix=.html spring.mvc.static-path-pattern=/plumelog/** spring.boot.admin.context-path=admin -#\u503C\u4E3A4\u79CD redis,kafka,rest,restServer -#redis \u8868\u793A\u7528redis\u5F53\u961F\u5217 -#kafka \u8868\u793A\u7528kafka\u5F53\u961F\u5217 -#rest \u8868\u793A\u4ECErest\u63A5\u53E3\u53D6\u65E5\u5FD7 -#restServer \u8868\u793A\u4F5C\u4E3Arest\u63A5\u53E3\u670D\u52A1\u5668\u542F\u52A8 -#ui \u8868\u793A\u5355\u72EC\u4F5C\u4E3Aui\u542F\u52A8 -#lite \u7B80\u6613\u6A21\u5F0F\u542F\u52A8\u4E0D\u9700\u8981\u914D\u7F6Eredis\u7B49 +#值为4种 redis,kafka,rest,restServer +#redis 表示用redis当队列 +#kafka 表示用kafka当队列 +#rest 表示从rest接口取日志 +#restServer 表示作为rest接口服务器启动 +#ui 表示单独作为ui启动 +#lite 简易模式启动不需要配置redis等 plumelog.model=redis #plumelog.lite.log.path=/Users/chenlongfei/lucene -#\u5982\u679C\u4F7F\u7528kafka,\u542F\u7528\u4E0B\u9762\u914D\u7F6E +#如果使用kafka,启用下面配置 #plumelog.kafka.kafkaHosts=172.16.247.143:9092,172.16.247.60:9092,172.16.247.64:9092 #plumelog.kafka.kafkaGroupName=logConsumer -#\u961F\u5217redis\u5730\u5740\uFF0Cmodel\u914D\u7F6Eredis\u96C6\u7FA4\u6A21\u5F0F\uFF0C\u54E8\u5175\u6A21\u5F0F\u7528\u9017\u53F7\u9694\u5F00\uFF0C\u961F\u5217redis\u4E0D\u652F\u6301\u96C6\u7FA4\u6A21\u5F0F +#队列redis地址,model配置redis集群模式,哨兵模式用逗号隔开,队列redis不支持集群模式 plumelog.queue.redis.redisHost=127.0.0.1:6379 -#\u5982\u679C\u4F7F\u7528redis\u6709\u5BC6\u7801,\u542F\u7528\u4E0B\u9762\u914D\u7F6E +#如果使用redis有密码,启用下面配置 #plumelog.queue.redis.redisPassWord=123456 #plumelog.queue.redis.redisDb=0 -#\u54E8\u5175\u6A21\u5F0F\u9700\u8981\u914D\u7F6E\u7684 +#哨兵模式需要配置的 #plumelog.queue.redis.sentinel.masterName=myMaster -#\u7BA1\u7406\u7AEFredis\u5730\u5740 \uFF0C\u96C6\u7FA4\u7528\u9017\u53F7\u9694\u5F00\uFF0C\u4E0D\u914D\u7F6E\u5C06\u548C\u961F\u5217\u516C\u7528 +#管理端redis地址 ,集群用逗号隔开,不配置将和队列公用 #plumelog.redis.redisHost=127.0.0.1:6379 -#\u5982\u679C\u4F7F\u7528redis\u6709\u5BC6\u7801,\u542F\u7528\u4E0B\u9762\u914D\u7F6E +#如果使用redis有密码,启用下面配置 #plumelog.redis.redisPassWord=123456 #plumelog.redis.redisDb=0 -#\u54E8\u5175\u6A21\u5F0F\u9700\u8981\u914D\u7F6E\u7684 +#哨兵模式需要配置的 #plumelog.redis.sentinel.masterName=myMaster -#\u5982\u679C\u4F7F\u7528rest,\u542F\u7528\u4E0B\u9762\u914D\u7F6E +#如果使用rest,启用下面配置 #plumelog.rest.restUrl=http://127.0.0.1:8891/getlog #plumelog.rest.restUserName=plumelog #plumelog.rest.restPassWord=123456 -#redis\u89E3\u538B\u7F29\u6A21\u5F0F\uFF0C\u5F00\u542F\u540E\u4E0D\u6D88\u8D39\u975E\u538B\u7F29\u7684\u961F\u5217 +#redis解压缩模式,开启后不消费非压缩的队列 #plumelog.redis.compressor=true -#elasticsearch\u76F8\u5173\u914D\u7F6E\uFF0CHosts\u652F\u6301\u643A\u5E26\u534F\u8BAE\uFF0C\u5982\uFF1Ahttp\u3001https +#elasticsearch相关配置,Hosts支持携带协议,如:http、https plumelog.es.esHosts=127.0.0.1:8200 #plumelog.es.shards=5 #plumelog.es.replicas=0 #plumelog.es.refresh.interval=30s -#\u65E5\u5FD7\u7D22\u5F15\u5EFA\u7ACB\u65B9\u5F0Fday\u8868\u793A\u6309\u5929\u3001hour\u8868\u793A\u6309\u7167\u5C0F\u65F6 +#日志索引建立方式day表示按天、hour表示按照小时 #plumelog.es.indexType.model=day #plumelog.es.maxShards=100000 -#ES\u8BBE\u7F6E\u5BC6\u7801,\u542F\u7528\u4E0B\u9762\u914D\u7F6E +#ES设置密码,启用下面配置 #plumelog.es.userName=elastic #plumelog.es.passWord=elastic -#\u662F\u5426\u4FE1\u4EFB\u81EA\u7B7E\u8BC1\u4E66 +#是否信任自签证书 #plumelog.es.trustSelfSigned=true -#\u662F\u5426hostname\u9A8C\u8BC1 +#是否hostname验证 #plumelog.es.hostnameVerification=false -#\u65E5\u5FD7\u4FDD\u5B58\u7D22\u5F15\u7C7B\u578Bcur:\u5F53\u524D\u7D22\u5F15,his:\u65E5\u5FD7\u5BF9\u5E94\u65F6\u95F4\u7D22\u5F15 +#日志保存索引类型cur:当前索引,his:日志对应时间索引 plumelog.es.logSaveindexType=his -#\u5355\u6B21\u62C9\u53D6\u65E5\u5FD7\u6761\u6570 +#单次拉取日志条数 plumelog.maxSendSize=100 -#\u62C9\u53D6\u65F6\u95F4\u95F4\u9694\uFF0Ckafka\u4E0D\u751F\u6548 +#拉取时间间隔,kafka不生效 plumelog.interval=100 -#plumelog-ui\u7684\u5730\u5740 \u5982\u679C\u4E0D\u914D\u7F6E\uFF0C\u62A5\u8B66\u4FE1\u606F\u91CC\u4E0D\u53EF\u4EE5\u70B9\u8FDE\u63A5 +#plumelog-ui的地址 如果不配置,报警信息里不可以点连接 plumelog.ui.url=http://demo.plumelog.com -#\u7BA1\u7406\u5BC6\u7801\uFF0C\u624B\u52A8\u5220\u9664\u65E5\u5FD7\u7684\u65F6\u5019\u9700\u8981\u8F93\u5165\u7684\u5BC6\u7801 +#管理密码,手动删除日志的时候需要输入的密码 admin.password=123456 -#\u65E5\u5FD7\u4FDD\u7559\u5929\u6570,\u914D\u7F6E0\u6216\u8005\u4E0D\u914D\u7F6E\u9ED8\u8BA4\u6C38\u4E45\u4FDD\u7559 +#日志保留天数,配置0或者不配置默认永久保留 admin.log.keepDays=30 -#\u94FE\u8DEF\u4FDD\u7559\u5929\u6570,\u914D\u7F6E0\u6216\u8005\u4E0D\u914D\u7F6E\u9ED8\u8BA4\u6C38\u4E45\u4FDD\u7559 +#链路保留天数,配置0或者不配置默认永久保留 admin.log.trace.keepDays=30 -#\u767B\u5F55\u914D\u7F6E\uFF0C\u914D\u7F6E\u540E\u4F1A\u6709\u767B\u5F55\u754C\u9762 +#登录配置,配置后会有登录界面 #login.username=admin #login.password=admin \ No newline at end of file -- Gitee