Config-api logs:#
Two types of logs generated by config-api, application logs
and audit log
.
- Application log contains application functionality logs
- Audit log contains information of each request received.
Logging configuration#
Log configuration is stored in DB along with the config-application other configuration
javascript { "configOauthEnabled": true, "apiApprovedIssuer": ["https://jans.server2"], "apiProtectionType": "oauth2", "apiClientId": "1800.c9c0b756-a1fc-4013-9feb-64d531ac2dc1", "apiClientPassword": "X9q7cAemqyD9LaS1c5YzIA==", "endpointInjectionEnabled": false, "authIssuerUrl": "https://jans.server2", "authOpenidConfigurationUrl": "https://jans.server2/.well-known/openid-configuration", "authOpenidIntrospectionUrl": "https://jans.server2/jans-auth/restv1/introspection", "authOpenidTokenUrl": "https://jans.server2/jans-auth/restv1/token", "authOpenidRevokeUrl": "https://jans.server2/jans-auth/restv1/revoke", "smallryeHealthRootPath": "/health-check", "disableJdkLogger":true, "loggingLevel":"INFO", "loggingLayout":"text", "externalLoggerConfiguration":"", "exclusiveAuthScopes": [ "jans_stat", "https://jans.io/scim/users.read", "https://jans.io/scim/users.write" ], "corsConfigurationFilters": [ { "filterName": "CorsFilter", "corsAllowedOrigins": "*", "corsAllowedMethods": "GET,PUT,POST,DELETE,PATCH,HEAD,OPTIONS", "corsAllowedHeaders": "", "corsExposedHeaders": "", "corsSupportCredentials": true, "corsLoggingEnabled": false, "corsPreflightMaxAge": 1800, "corsRequestDecorate": true, "corsEnabled": true } ], "userExclusionAttributes": [ "userPassword" ], "userMandatoryAttributes": [ "mail", "displayName", "jansStatus", "userPassword", "givenName" ], "agamaConfiguration": { "mandatoryAttributes": [ "qname", "source" ], "optionalAttributes": [ "serialVersionUID", "enabled" ] }, "auditLogConf": { "enabled": true, "ignoreHttpMethod": [], "headerAttributes": [ "User-inum" ] }, "dataFormatConversionConf": { "enabled": true, "ignoreHttpMethod": [ "@jakarta.ws.rs.GET()" ] }, "plugins": [ { "name": "admin", "description": "admin-ui plugin", "className": "io.jans.ca.plugin.adminui.rest.ApiApplication" }, { "name": "fido2", "description": "fido2 plugin", "className": "io.jans.configapi.plugin.fido2.rest.ApiApplication" }, { "name": "scim", "description": "scim plugin", "className": "io.jans.configapi.plugin.scim.rest.ApiApplication" }, { "name": "user-management", "description": "user-management plugin", "className": "io.jans.configapi.plugin.mgt.rest.ApiApplication" } ] }
Audit log#
Configuration#
... auditLogConf": { "enabled": true, "ignoreHttpMethod": [], "headerAttributes": [ "User-inum" ] ...
Field | Description | Example |
---|---|---|
enabled | Flag to enable and disable audit log | true , default value is true, to enable audit logging |
ignoreHttpMethod | HTTP methods for which audit is disabled | @jakarta.ws.rs.GET(), @jakarta.ws.rs.PATCH(), @jakarta.ws.rs.PATCH(), etc |
headerAttributes | List of HTTP header attributes whose value is to be logged | User-inum |
File name and location on server#
- Log name:
configapi-audit.log
- Log location:
/opt/jans/jetty/jans-config-api/logs
Application Logs#
Config-api uses log4j to generate application execution logs for each endpoint invocation. These can be used to debug the application.
Configuration#
-
DB:
``javascript ... "loggingLevel":"DEBUG", "loggingLayout":"text" ...
-
log4j file:
https://github.com/JanssenProject/jans/blob/main/jans-config-api/server/src/main/resources/log4j2.xml
DB configuration#
-
Fetch configuration
curl -k -i -H "Accept: application/json" -H "Content-Type: application/json" -H "Authorization:Bearer 3114e010-fd4d-4e62-b5e2-a51b7d6dd231" -X GET https://jans.server/jans-config-api/api/v1/api-config
-
Patch configuration
curl -X PATCH -k -H 'Content-Type: application/json-patch+json' -H 'Authorization:Bearer 3114e010-fd4d-4e62-b5e2-a51b7d6dd231' -i 'https://jans.server/jans-config-api/api/v1/api-config' --data '[{"op": "replace", "path": "/loggingLevel", "value":"ERROR"}, {"op": "replace", "path": "/loggingLayout", "value":"json"}, {"op": "replace", "path": "/auditLogConf/enabled", "value":false} , {"op": "replace", "path": "/auditLogConf/headerAttributes", "value":["User-inum","city"]}]'
Created: 2022-07-21