如何在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.
執行完report後返回SAAB即可檢視到記錄的日誌。
雙擊能看到記錄的明細。
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:
取名為jerry-log:
(4) 程式碼裡的使用:
import org.slf4j.Logger; import org.slf4j.LoggerFactory; private static final Logger LOGGER = LoggerFactory.getLogger(ConnectivityServlet.class);
然後使用LOGGER.info 記錄日誌。
(5) 如何查詢記錄的日誌:
點選Logs標籤頁->Open Kibanna Dashboard, 能看到上圖"Diablo Connecting to backend system"對應的日誌:
在log明細裡能看到之前在SAP雲平臺Cockpit裡建立的Log service例項。
要獲取更多Jerry的原創技術文章,請關注公眾號"汪子熙"或者掃描下面二維碼:
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/24475491/viewspace-2155945/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Netweaver和CloudFoundry的伺服器日誌Cloud伺服器
- 如何在Netweaver SE16裡直接檢視某資料庫行記錄資料庫
- Netweaver和CloudFoundry裡的trace開關Cloud
- NAS中如何檢視日誌記錄?
- SAP ABAP Netweaver 裡的 ABAP 會話概念會話
- ABAP Netweaver和Hybris裡獲得記憶體使用統計資料記憶體
- 如何使用Journalctl檢視並操作Systemd日誌
- SAP Hybris和ABAP Netweaver裡的DAO(Data access object)Object
- 如何使用Prometheus採集SAP ABAP Netweaver的應用日誌資料Prometheus應用日誌
- 如何在iOS手機上檢視應用日誌iOS應用日誌
- 如何在專案中記錄日誌資訊?
- ABAP 檢視webservice錯誤日誌事務碼:SRT_UTILWeb
- 執行在Docker裡的SpringBoot應用,如何檢視記錄在檔案系統的日誌DockerSpring Boot
- Linux 檢視日誌Linux
- alertmanager: 檢視日誌
- eclipse設定檢視GC日誌和如何理解GC日誌EclipseGC
- Netweaver和CloudFoundry是如何執行Web應用的?CloudWeb
- SAP ABAP Netweaver裡的胖介面(fat interface)
- 如何在MySQL中檢視binlog二進位制日誌?MySql
- Hyperf日誌檢視元件元件
- Logminer如何檢視日誌
- 日誌記錄器
- ThinkPHP日誌記錄PHP
- win10檢視開機日誌方法 win10怎麼檢視開機歷史記錄Win10
- ABAP Netweaver和git的快捷方式Git
- 學會使用 SAP ABAP Application Log 在程式碼裡新增應用日誌記錄功能試讀版APP應用日誌
- ABAP Netweaver 和 ABAP Platform 這兩個名詞的辨析Platform
- SAP ABAP Netweaver 裡的使用者會話概念會話
- mysql 開啟和關閉日誌記錄MySql
- docker檢視容器日誌命令Docker
- 檢視系統的日誌
- windows_weblogic日誌檢視WindowsWeb
- Win10系統日誌怎麼檢視_win10系統日誌在哪裡Win10
- win10日誌檔案在哪裡_win10系統日誌怎麼檢視Win10
- Laravel sql 日誌記錄LaravelSQL
- SAP ABAP Netweaver和Hybris Commerce的部署策略
- Netweaver工作程式的記憶體限制 VS CloudFoundry應用的記憶體限制記憶體Cloud
- 基於AOP和ThreadLocal實現日誌記錄thread