Argus PEP Server: Operation
EMI
For EMI Argus (v1.6) , see the
Argus Service Reference Card
Starting & Stopping the Service
-
$PEPD_HOME/sbin/pdpctl.sh start
- starts the service
-
$PEPD_HOME/sbin/pdpctl.sh stop
- stops the services
-
$PEPD_HOME/sbin/pdpctl.sh status
- provides service status data
-
$PEPD_HOME/sbin/pepdctl.sh clearResponseCache
- causes the currently cached responses from the PDP can be flushed from memory
Service Information
Service Ports
- Default Service Port:
8154
- Default Admin Port:
8155
The PEP service only requires the standard service port to be open to those PEP clients which will communicate with the PEP. The PEP must also be able to make outbound connections to those PDPs to which is will make policy decision requests.
Service Endpoints
This service contains the following endpoint URLs:
-
https://argus.example.org:8154/authz
- This endpoint is the recipient of authorization requests and is reachable on the standard service host and port.
-
http://127.0.0.1:8155/status
- This endpoint provides current status information on the PEP daemon and is reachable on the standard admin host and port.
-
http://127.0.0.1:8155/clearResponseCache
- This endpoint instructs the PEP daemon to flush its PDP response cache. It is reachable on the standard admin host and port.
-
http://127.0.0.1:8155/shutdown
- This endpoint instructs the PEP daemon to shutdown and is reachable on the standard admin host and port.
Note: Admin services may be password protected and thus not invokable without this password.
Logging and Logs
This service uses the
logback
logging library. Java developers are probably familiar with Apache Log4J, logback is written by the developer who initially wrote Log4J and contains a cleaner API and is much more performant. The configuration file for the logging system can be found in
$PEP_HOME/conf/logging.xml
and changes to this file are picked up every 5 minutes.
Enable Debug Logging
To enable debug logging follow:
- Locate the line that contains
logger name="org.glite.authz"
(line 10 in the default logging config)
- On the following line, change
INFO
to DEBUG
In some cases it may be helpful to see the incoming and outgoing messages. To do this:
- Locate the line that contains
org.glite.authz.message.protocol
(line 15 in the default logging config)
- On the following line, change
INFO
to DEBUG
NOTE always change your logging levels back to their original values once you are done debugging a problem. Keeping the system on the debug logging level could fill up your disk partition in a short time.
Service Logs
The service writes three different logs, located in $PEPD_HOME/logs:
- process.log - This log file contains the normal, human-oriented logging messages that the system generates while in operation. This can be thought of as the debug log (though that's really only true if configured to log debug messages).
- access.log - This file is an Apache-style access log showing information about incoming requests. This log is meant to be machine parsed. Each line contains the following '|' (pipe) delimited fields:
- request time - time of the request, in the UTC timezone, from the Unix epoch (Jan 1, 1970, 00:00:00 UTC)
- remote host - the hostname or IP address of the host that contacted the PDP
- server host - the hostname or IP address on which the server received the request
- server port - the port on which the server received the request
- request path - the URL path that was requested
- audit.log - This file contains information useful for auditing the system (e.g. results of authorization requests). This log is meant to be machine parsed. Each line contains the following '|' (pipe) delimited fields:
- request time - time of the request, in the UTC timezone, from the Unix epoch (Jan 1, 1970, 00:00:00 UTC)
- request ID - the ID of the authorization request
- responder ID - the URL of the PDP that responded to the authorization request
- response ID - the ID of the response message sent back from the PDP
- policy decision - the authorization decision that was reached