共计 2718 个字符,预计需要花费 7 分钟才能阅读完成。
自动写代码机器人,免费开通
这篇文章主要为大家展示了“怎么在 ABAP Netweaver 和 CloudFoundry 里记录并查看日志”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让丸趣 TV 小编带领大家一起研究并学习一下“怎么在 ABAP Netweaver 和 CloudFoundry 里记录并查看日志”这篇文章吧。
Netweaver
要记录日志需要有一个 checkpoint group,可以自行创建也可以使用标准的。这里我重用标准的 group:DEMO_CHECKPOINT_GROUP。
tcode SAAB,点 Display – Activate 进入编辑模式,将 Logpoints 设置为 Log,日期设为 Today,意为当天生效。
Netweaver 的日志记录大多是基于用户级别的,这一点比较方便。给想打开日志记录的用户创建一个打开日志开关的配置:
新建一个 report 名称为 ZCONTEXT, 下面代码的含义是把当前 report 名称 (包含在环境变量 sy-cprog)和当前 report 的运行环境 (online 运行还是 offline 运行)写入该 checkpoint group。因为可能有其他人也会使用该 group,所以用 SUBKEY 区分不同的用户。
LOG-POINT ID demo_checkpoint_group
SUBKEY sy-uname
FIELDS sy-batch sy-cprog.
CloudFoundry
总的 guideline 在 SAP 官方 Github 上有。
这里简述要点。
SAP 云平台的 CloudFoundry 环境里的日志记录推荐使用 slf4j(Simple Log Facade for Java)。即 Java 代码里使用 slf4j 提供的接口进行日志记录,而具体的日志记录实现可以通过配置文件来指定。
我做了一个例子,全部源代码在我的 github 上。
我的例子使用 log4j2 作为日志记录的实现。
(1) 在 Java 项目的 pom.xml 里定义 slf4j 和 log4j2 的版本号。
properties maven.compiler.source 1.8 /maven.compiler.source maven.compiler.target 1.8 /maven.compiler.target cf-logging-version 2.1.5 /cf-logging-version log4j2.version 2.8.2 /log4j2.version slf4j.version 1.7.24 /slf4j.version /properties
在 pom.xml 文件的 dependency 区域维护相关的 dependency:
dependency groupId org.slf4j /groupId artifactId slf4j-api /artifactId version ${slf4j.version} /version /dependency dependency groupId com.sap.hcp.cf.logging /groupId artifactId cf-java-logging-support-log4j2 /artifactId version ${cf-logging-version} /version /dependency dependency groupId org.apache.logging.log4j /groupId artifactId log4j-slf4j-impl /artifactId version ${log4j2.version} /version /dependency dependency groupId org.apache.logging.log4j /groupId artifactId log4j-core /artifactId version ${log4j2.version} /version /dependency dependency groupId com.sap.hcp.cf.logging /groupId artifactId cf-java-logging-support-servlet /artifactId version ${cf-logging-version} /version /dependency
(2) 在 CLASSPATH 下新建 log4j2.xml, 使用如下源代码:
Configuration status= warn strict= true packages= com.sap.hcp.cf.log4j2.converter,com.sap.hcp.cf.log4j2.layout Appenders Console name= STDOUT-JSON target= SYSTEM_OUT follow= true JsonPatternLayout charset= utf-8 / /Console Console name= STDOUT target= SYSTEM_OUT follow= true PatternLayout pattern= %d{HH:mm:ss.SSS} [%t] %-5level %logger{36} [%mdc] - %msg%n / /Console /Appenders Loggers !-- Jerry: Log level: INFO -- Root level= ${LOG_ROOT_LEVEL:-INFO} AppenderRef ref= STDOUT-JSON / /Root Logger name= com.sap.hcp.cf level= ${LOG_HCP_CF_LEVEL:-INFO} / /Loggers /Configuration
(3) 在 SAP 云平台 Cockpit 里创建一个新的 log instance:
(4) 代码里的使用:
import org.slf4j.Logger; import org.slf4j.LoggerFactory; private static final Logger LOGGER = LoggerFactory.getLogger(ConnectivityServlet.class);
然后使用 LOGGER.info 记录日志。
以上是“怎么在 ABAP Netweaver 和 CloudFoundry 里记录并查看日志”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注丸趣 TV 行业资讯频道!
向 AI 问一下细节
丸趣 TV 网 – 提供最优质的资源集合!