`
JerryWang_SAP
  • 浏览: 1030613 次
  • 性别: Icon_minigender_1
  • 来自: 成都
文章分类
社区版块
存档分类
最新评论

如何在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的原创技术文章,请关注公众号"汪子熙"或者扫描下面二维码:

 
 
0
0
分享到:
评论

相关推荐

    ABAP netweaver 2004sSPS8

    本篇文章将深入探讨 ABAP NetWeaver 2004s SPS8 版本中的 Web Dynpro for ABAP 的关键概念和技术细节。 #### Web Dynpro for ABAP Web Dynpro for ABAP 是一种现代的、面向对象的开发工具,用于创建 SAP 系统内的 ...

    SAP ABAP 通用接口日志&amp;restful 动态调用FM

    在ABAP中,你可以通过定义和实现特定的日志类来创建自定义的日志机制,这些类通常会记录接口调用的输入参数、返回值、异常以及执行时间等信息。 接下来,我们转向RESTful动态调用Function Module(FM)。REST...

    SAP NetWeaver ABAP and Adobe Forms

    ### SAP NetWeaver ABAP 和 Adobe Forms:深入解析 #### 一、SAP与Adobe的战略合作 SAP与Adobe之间的战略合作始于2004年,随着SAP NetWeaver的推出,这一合作关系得到了进一步加强。Adobe提供的技术为SAP ...

    如何查看SAP用户登录日志记录

    在SAP系统中,默认情况下只能查看用户的上次登录记录,但之前的登录并不会进行记录。这篇文章将介绍如何设置审计参数文件,并利用审计日志来查看用户在某段时间内的登录情况。 首先,我们需要了解SAP系统中的审计...

    SAP_ABAP_4.7.rar_SAP abap4_abap_abap chm_abap 4_abap4

    综上所述,"SAP_ABAP_4.7.CHM"是学习和精通SAP ABAP 4.7开发的重要参考资料,它将带领开发者深入理解ABAP语言,提升在SAP环境下的开发能力,实现高效的企业级应用开发。无论是初学者还是经验丰富的开发者,都能从中...

    ABAP 调用ABAP PROXY

    ABAP Proxy是SAP NetWeaver平台的一部分,它提供了一种灵活且可靠的通讯方式,特别是在分布式应用系统中。Proxy能够模拟远程服务的调用,使得本地ABAP代码可以像调用本地函数模块一样调用远程服务。这种方式降低了...

    SAP系统业务-查询系统日志信息.docx

    STAD提供了基本的日志查看功能,ST03N则增强了性能监控和用户操作分析,而SE16N则允许直接访问数据库层面的信息,它们共同构成了SAP系统日志查询和分析的工具箱。通过熟练掌握这些工具,SAP管理员能够更好地理解和...

    abap xlsx2 demo 程序

    在ABAP中,可以使用内建的数据结构如BAPI_BOOKMARK或BAPI_XSLTTRANSFORM进行简单的文本文件操作,但这些并不直接支持.xlsx格式。通常,需要借助第三方库如OpenOffice或Apache POI(Java库)的ABAP版本,这些库提供了...

    ABAP加密和解密.doc

    在ABAP编程中,加密和解密是两个关键的安全操作,用于保护敏感数据不被未经授权的用户访问。本文将深入探讨ABAP环境下的加密和解密技术,以及如何在实际应用中实施这些技术。 首先,我们需要理解加密的基本原理。...

    SAP用户登录日志(电脑名-IP地址-MAC地址-电脑用户名)

    SAP用户登录日志系统是一个功能强大的工具,旨在记录和追踪用户在SAP系统中的登录行为。该系统由五个模块组成,分别是用户登录日志表、记录用户登录增强程序、用户登录日志查询报表、DLL文件(获取MAC地址)和GUI...

    abap调用hana存储过程.pdf

    ### ABAP调用HANA存储过程详解 #### 标题:ABAP调用HANA存储过程 ...通过遵循这些步骤和建议,开发者可以轻松地在ABAP程序中集成和利用SAP HANA存储过程的强大功能,进而提升应用程序的整体性能和用户体验。

    .NET SAP RFC API based on SAP Netweaver RFC SDK.zip

    - **日志记录**:记录RFC调用的详细信息,有助于故障排查和性能监控。 综上所述,.NET SAP RFC API是.NET开发者与SAP系统进行深度集成的重要工具,它简化了跨平台通信的复杂性,使得非SAP环境的应用程序能够充分...

    abap学习资料abap

    1. **ABAP概述**:介绍ABAP的历史、特点和在SAP系统中的角色,以及学习ABAP的重要性。 2. **基本语法**:涵盖ABAP的数据类型、变量声明、控制结构(如IF-THEN-ELSE,LOOP)以及注释的使用。 3. **程序结构**:讲解...

    abap 函数大全 abap function

    在“ABAP 函数大全”中,我们可以看到对各种ABAP函数模块的详细描述和用法。这些函数模块涵盖了数据处理、数据库交互、报表生成、界面控制等多个方面,是ABAP开发中不可或缺的工具。 1. 数据处理:ABAP提供了大量的...

    ABAP用户指南(SAP ABAP开发)

    - **审计日志**:记录关键操作的日志,以便于安全审计。 综上所述,SAP ABAP开发是一门综合性强的技术领域,涵盖了从基础语法到高级编程概念,再到系统集成和性能优化等多个方面。对于想要深入学习或从事SAP开发...

    abap逻辑数据库ABAP数据库操作

    标题和描述所涉及的知识点主要集中在ABAP语言在SAP系统中对数据库的操作和管理。由于这部分内容比较专业,我将尽量详细地阐述ABAP(Advanced Business Application Programming)逻辑数据库和数据库操作的概念和用法...

    SAP ABAP 电子书

    SAP ABAP(Advanced Business Application Programming)是SAP公司推出的一种高级业务应用编程语言,用于开发在SAP R/3和SAP NetWeaver平台上的应用程序。这些电子书提供了全面的资源,帮助学习者深入理解并掌握SAP ...

    SAP-ABAP语法详解教材

    13. **错误处理和日志记录**:学习使用TRY-CATCH块进行异常处理,以及使用DEBUGGER和LOG记录程序运行状态。 14. **性能优化**:掌握如何通过分析和调优提高程序性能,包括使用ABAP Profiler和DB Monitor。 15. **...

    ABAP on SAP HANA – Building an End-to-End App from HANA via ABAP to SAPUI5

    #### ABAP开发工具 (ADT) 和 ABAP列表查看器 (ALV) - **ABAP Development Tools (ADT):** ADT是基于Eclipse平台的一套完整的开发环境,用于支持ABAP的开发、测试、调试和部署。它提供了丰富的功能,如代码编辑、...

    Sap NetWeaver 架构分析

    随着技术的发展,SAP NetWeaver也在不断更新,引入了新技术如HANA(High-Performance Analytic Appliance)内存数据库和SAP Cloud Platform,以适应云计算和大数据的需求。 总结来说,SAP NetWeaver是一个强大的...

Global site tag (gtag.js) - Google Analytics