栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

如何在App Engine Flex Java环境中使用Stackdriver Structured日志记录

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

如何在App Engine Flex Java环境中使用Stackdriver Structured日志记录

您可以使用Logback附加程序+实施 LoggingEnhacer

public class LogEnhancer implements LoggingEnhancer {  @Override  public void enhanceLogEntry(LogEntry.Builder logEntry) {    // add Labels    logEntry.addLabel("project", "conversational-services");    // Transform textPayload to JSonPayload    ObjectMapper mapper = new ObjectMapper();    Builder structBuilder = Struct.newBuilder();    String textPayload = logEntry.build().getPayload().getData().toString();    try {      // Validate JSON Payload      mapper.readTree(textPayload);      JsonFormat.parser().merge(textPayload, structBuilder);      logEntry.setPayload(JsonPayload.of(structBuilder.build()));    } catch (InvalidProtocolBufferException e) {      // Error reporting an error! FML      System.err.println(e.getMessage());    } catch (IOException e) {      // Do nothing (there is not a JSON Payload)    }  }}

此类添加标签并在JSONPayload中转换JSON字符串

你需要指定 LoggingEnhacerlogback.xml 文件

<!DOCTYPE configuration><configuration>  <appender name="CLOUD" >    <filter >      <level>INFO</level>    </filter>    <log>application.log</log>     <resourceType>gae_app</resourceType>     <!--  References to the LoggingEnhacer class -->     <enhancer>[path_for_your_logging_enhancer_class]</enhancer>    <flushLevel>WARN</flushLevel>   </appender>  <root level="info">    <appender-ref ref="CLOUD" />  </root></configuration>


转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/507812.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号