Salesforce

Where is the AppServer or WebSpeed Broker logging information?

« Go Back

Information

 
TitleWhere is the AppServer or WebSpeed Broker logging information?
URL NameWhere-is-AppServer-WebSpeed-Broker-logging-information
Article Number000117163
EnvironmentProduct: OpenEdge
Version: All Supported Versions
OS: All Supported Platforms
Question/Problem Description
How do users find where the AppServer and WebSpeed Brokers are logging information?
How to determine which WebSpeed log files or AppServer log files are being generated by a specific UBroker?
Where is  a specific or WebSpeed or AppServer Broker writing logentrytypes information?
Where is the location of the UBroker log files?
Steps to Reproduce
Clarifying Information
Error Message
Defect Number
Enhancement Number
Cause
Resolution
[Design-Time ubroker.properties]

Classic AppServer and WebSpeed configurations are defined in a file named ubroker.properties.  A default configuration file in the <install-dir[DLC]>\properties folder is used unless a different properties file is specified when the AdminService used to manage the broker is started:

$  proadsv -start -f <path>/myubroker.properties

The properties which store the location and name of the Broker and Server logs being used by a resource are brokerLogFile and srvrLogFile respectively.

The UBroker itself uses inheritance to allow specifying default property values by category of resource, then breaks down to the actual broker definition.

The ubroker.properties inheritance:
  • [UBroker]
  • [UBroker.<broker-type>]
  • [UBroker.<broker-type>.<broker-name>]
For example: The following sections of the ubroker.properties file need to be examined for the comprehensive definition of an AppServer resource named asbroker1
  • [UBroker]
  • [UBroker.AS]
  • [UBroker.AS.asbroker1]
[Configuration Utilities]

Once a Broker definition is defined in a properties file, it can be a bit of a task to extrapolate which properties are being used by a specific broker instance. The properties are expressed in multiple sections of the file and it's easy to miss the definition of a property that was defined, then redefined in another section of the file which takes precedence. Additionally, when environment variables are used in the properties file, the value they resolve to may be different depending upon what was set when the AdminServer governing the Broker instance was started.

The ASCONFIG and WSCONFIG utilities can be used online or offline to resolve a fixed (alphabetical) list of property values that apply to a specific broker resource 

General usage of ASCONFIG and WSCONFIG utilities:

<AppServer>
ASCONFIG -name <broker-name> [-propfile <path-to-ubroker.properties>] -validate
<WebSpeed>
WSCONFIG -name <broker-name> [-propfile <path-to-ubroker.properties>] -validate 

For example: To see the full set of properties for a WebSpeed broker named wsbroker1:
    
proenv> $DLC/bin/wsconfig -i wsbroker1 -validate

Sample WSCONFIG logfile related configuration output for wsbroker1
 
brkrLogAppend: 1
brkrLogEntries: 0
brkrLogEntryTypes: 0
brkrLoggingLevel: 2
brkrLogThreshold: 0
brkrNumLogFiles: 3
brokerLogFile: @{WorkPath}\wsbroker1.broker.log     (D:\wrk\wsbroker1.broker.log)

srvrLogAppend: 1
srvrLogEntries: 0
srvrLogEntryTypes: 0
srvrLogFile: @{WorkPath}\wsbroker1.server.log     (D:\wrk\wsbroker1.server.log)
srvrLoggingLevel: 2
srvrLogThreshold: 0
srvrLogWatchdogInterval: 60
srvrNumLogFiles: 3

[Checking at Runtime]

The problem with the methods outlined above, is when it is not known which ubroker.properties file was being used to define a given resource when it was started. Different configuration files are needed to preserve debug parameters or distinct Server references for example.

If when the AdminService was started it used a different properties file, then the -propfile parameter needs to be specified with the ASCONFIG or WSCONFIG utility. Otherwise the default <DLC>/properties/ubroker.properties file is read and validated, rather than the one that is actually being used to define the running instance of the Broker.  Different property values may be reported when that UBroker resource configuration is defined in other configuration files.

Operating System appropriate command/functionality can be used to view details about a running Broker or Agent process, to find the correct configuration properties file to use in conjunction with the ASCONFIG or WSCONFIG utility. 

For example:

On Windows, Task Manager can be used with the "Command Line" column to view details about the processes associated with an AppServer or WebSpeed Broker and/or Agent process.  

On UNIX / Linux, the ps command can be used

A. [Broker Log File]

1. First find the process id (PID) of the Broker process.  This can be found by using either WTBMAN or ASBMAN to query the running Broker.

For example: The ASBMAN command produces following output for an AppServer resource named asbroker1, which includes the Broker and Server PIDs:
       
proenv>$DLC/bin/asbman -i asbroker1 -query
 
Connecting to Progress AdminServer using rmi://localhost:20931/Chimera (8280)
Searching for asbroker1 (8288)
Connecting to asbroker1  (8276)

Broker Name                    : asbroker1
Operating Mode                 : State-reset
Broker Status                  :  ACTIVE
Broker Port                    : 3090
Broker PID                     : 47682
Active Servers                 : 1
Busy Servers                   : 0
Locked Servers                 : 0
Available Servers              : 1
Active Clients (now, peak)     : (0, 0)
Client Queue Depth (cur, max)  : (0, 0)
Total Requests                 : 0
Rq Wait (max, avg)             : (0 ms, 0 ms)
Rq Duration (max, avg)         : (0 ms, 0 ms)

PID   State     Port  nRq    nRcvd  nSent  Started          Last Change
47711 AVAILABLE 02003 000000 000000 000000 <date time> <date time>

2. Locate the Broker PID through Task Manager or ps utilities and view the command line to find the physical address of the configuration properties file being used.

For example, the following command shows the full command line used to start the Broker (java) process on UNIX/Linux systems:

$   ps -eaf | fgrep 47682
 
<owner> 47682 1 2 10:58 ? 00:00:02 /tools/linuxx86_64/java64/jdk1.8.0_101/jre/bin/java 
-classpath /tools/linuxx86_64/java64/jdk1.8.0_101/lib/tools.jar:/usr/dlc/java/progress.jar 
-DInstall.Dir=/usr/dlc 
-Djava.security.policy=/usr/dlc/java/java.policy 
-DCanonicalName= com.progress.ubroker.broker.ubroker 
-t AS 
-i asbroker1 
-r rmi://localhost:20931/asbroker1 
-f /usr/dlc/properties/ubroker.properties

3. Use the physical address of the ubroker.properties file for the -propfile parameter with the ASCONFIG utility.
  • Review the brokerLogFile property in the output to find the location of the Broker log file.
  • Review the srvrLogFile property in the output to find the location of the Server log file.
For example:
 
proenv>$DLC/bin/asconfig -name asbroker1 -propfile /usr/dlc/properties/ubroker.properties -validate

The parsed Broker and Server (Agent) Logfile configuration output from the ASCONFIG:
 
brokerLogFile: $WRKDIR/asbroker1.broker.log    (/usr/wrk/logs/asbroker1.broker.log)
srvrLogFile: $WRKDIR/wsbroker1.server.log    (/usr/wrk/logs/wsbroker1.server.log)

B. [Agent Log File]

A similar method is used to find only the Server log file for running Agents. 

1. Use either WTBMAN or ASBMAN to query the Broker to find the process id (PID) of the Server 

2. Locate the Server PID through Task Manager on Windows or ps utilities (as outlined above) and view the command line.

For the agent process, the -logfile parameter value in the startup command defines the path and logfile for that resource.
Additionally the -ubpropfile parameter value shows the physical address of the ubroker.properties file to use in conjunction with the ASCONFIG utility if needed. 

For example:  
Assume the PID has been identified as 47711 for one of the AppServer Agents from ASBMAN -query output for the running AppServer Broker.  
The Command Line column from Task Manager shows the value of the -logfile parameter used by the running Agents.  
 
"C:\bin\_proapsv.exe" 
-logginglevel 3 
-logfile "D:\wrk\logs\asbroker1.server.log" 
-ubpid 13184 
-Ms 1 
-logname asbroker1 
-logentrytypes ASPlumbing,DB.Connects -logthreshold 0 
-numlogfiles 3 
-ASID 2 
-ubpropfile "C:\prgs\properties\ubroker.properties" 
-ipver IPv4
Workaround
Notes
Keyword Phrase
Last Modified Date2/18/2021 12:14 PM

Powered by