Go to primary content
Oracle® Retail Service Backbone Implementation Guide
16.0
E80618-01
  Go To Table Of Contents
Contents

Previous
Previous
 
Next
Next
 

12 Instrumentation in RSB

In RSB the service consumers and providers communicate through RSB layer. The consumers call a proxy service in RSB and RSB calls the service providers using business service. This decoupling provides many benefits, once of which is the opportunity for instrumentation. The service calls are intercepted and useful information extracted and persisted without affecting the functionality. RSB uses instrumentation to get the meta data of services for reporting, analyzing and troubleshooting.

Decorator Service Instrumentation in RSB

In RSB the instrumentation is done in the decorator module. The service invocation is intercepted and the data fields are captured and persisted to the database configured at the deployment. This process is done asynchronously so that performance of the main flow is not directly affected. The data fields are persisted to rsb_service_activity table.

RSB_SERVICE_ACTIVITY Table: Table Structure Definition

Table 12-1

Column Name Data Type Nullable? Description

ACTIVITY_NUM

NUMBER(19,0)

No

Generated unique number.

ACTIVITY_STATE

VARCHAR2(8 BYTE)

Yes

Can have RESPONSE or ERROR as value.

APPLICATION_NAME

VARCHAR2(12 BYTE)

Yes

Name of the service provider application.

BUSINESS_OPERATION_NAME

VARCHAR2(256 BYTE)

Yes

The service operation name.

BUSINESS_SERVICE_NAME

VARCHAR2(256 BYTE)

Yes

The name of OSB business service.

BUSINESS_SERVICE_URI

VARCHAR2(256 BYTE)

Yes

Not populated by OSB.

ERROR_CODE

VARCHAR2(64 BYTE)

Yes

Error code returned by service provider.

ERROR_DETAIL

VARCHAR2(2048 BYTE)

Yes

Not populated by OSB.

ERROR_REASON

VARCHAR2(1024 BYTE)

Yes

Error message returned by service provider.

MESSAGE_ECID

VARCHAR2(64 BYTE)

No

Generated ID.

MESSAGE_FAMILY

VARCHAR2(25 BYTE)

Yes

Retail Message Family.

PROXY_OPERATION_NAME

VARCHAR2(64 BYTE)

Yes

Name of the OSB proxy service operation.

PROXY_SERVICE_NAME

VARCHAR2(256 BYTE)

Yes

Name of the OSB proxy service.

PROXY_SERVICE_URI

VARCHAR2(256 BYTE)

Yes

URI of the proxy service.

REQUEST_TIMESTAMP

TIMESTAMP(6)

Yes

The timestamp of the service request.

REQUEST_XML

CLOB

Yes

XML payload of the service request.

RESPONSE_TIMESTAMP

TIMESTAMP(6)

Yes

The timestamp of the service response.

RESPONSE_XML

CLOB

Yes

XML payload of the service response.



Note:

REQUEST_XML and RESPONSE_XML are populated only when the audit is enabled. See Appendix D for more details on the RSB Service Activity Table.

Broadcasting Logs

In a clustered environment the RSB components may run in any of the managed servers depending on the load of the system. Thus the log messages are distributed across the managed server logs. This posts a huge hurdle in debugging issues, since there is no way to predict which component runs in which managed server. RIC solves this problem by broadcasting the logs from all the managed servers to the admin server and providing a single place to view the consolidated log. The consolidated log file is retrieved from the server using WebLogic Diagnostic Framework (WLDF). The consolidated log can be viewed using RIC or by directly viewing the <domain name>.log in the servers/AdminServer/logs folder in the domain home. The log file name and related attributes are set in the WebLogic server during the -prepare-wls step of the deployment.