Is that possible to separate logging for management operations in BRMS Guvnor ?

Solution Unverified - Updated -

Environment

  • Red Hat JBoss BRMS
    • 5.x
  • JBoss Enterprise Application Platform (EAP)
    • 6.x

Issue

  • We're running JBoss BRMS 5.3.1 on JBoss Enterprise Application Platform (EAP) 6.0.1. Authentication is done via JAAS security domains referenced from EAP application realms in standalone-full.xml of EAP.
    I would like to configure a custom logger / logging category for Guvnor, logging the following events:

    • User login to and logout from Guvnor
    • User management on the administration pages of Guvnor
    • Asset creation, modification and deletion (e.g. adding/changing/deleting a business rule, adding/changing/deleting a process).
  • Do we have any API to capture the event log that is visible in guvnor console: JBoss BRMS -> Administration ->Event Log

Resolution

Setup org.jboss.as.logging.per-deployment=false

Please follow solution article BRMS 5 deployable on EAP 6 doesn't log error messages to setup this, for example:

<system-properties>
  <property name="org.jboss.as.logging.per-deployment" value="false"/>
</system-properties>

Setup user login logging: org.drools.guvnor.server.security.SecurityServiceImpl

Use category org.drools.guvnor.server.security.SecurityServiceImpl to separate user login loggings. For example:

    <periodic-rotating-file-handler name="BRMS-Login">
        <formatter>
            <pattern-formatter pattern="%d{HH:mm:ss,SSS} %-5p [%c] (%t) %s%E%n"/>
        </formatter>
        <file relative-to="jboss.server.log.dir" path="user-login.log"/>
        <suffix value=".yyyy-MM-dd"/>
        <append value="true"/>
    </periodic-rotating-file-handler>

    <logger category="org.drools.guvnor.server.security.SecurityServiceImpl" use-parent-handlers="false">
        <handlers>
            <handler name="BRMS-Login"/>
        </handlers>
        <level name="INFO"/>
    </logger>

Unfortunately, there isn't any logging for user logout operations.
Logging example:

17:22:57,973 INFO  [org.drools.guvnor.server.security.SecurityServiceImpl] (http-/127.0.0.1:8080-2) Logging in user [jboss]

Setup Guvnor operations logging: org.drools.guvnor.server

Use category org.drools.guvnor.server to separate Guvnor management operations. For example:

    <periodic-rotating-file-handler name="Guvnor">
        <formatter>
            <pattern-formatter pattern="%d{HH:mm:ss,SSS} %-5p [%c] (%t) %s%E%n"/>
        </formatter>
        <file relative-to="jboss.server.log.dir" path="guvnor.log"/>
        <suffix value=".yyyy-MM-dd"/>
        <append value="true"/>
    </periodic-rotating-file-handler>

    <logger category="org.drools.guvnor.server" use-parent-handlers="false">
        <handlers>
            <handler name="Guvnor"/>
        </handlers>
        <level name="INFO"/>
    </logger>

Logging example:

INFO  [org.drools.guvnor.server.RepositoryPackageOperations] (http-/127.0.0.1:8080-2) USER: jboss CREATING package [TestCreate]
INFO  [org.drools.guvnor.server.ServiceImplementation] (http-/127.0.0.1:8080-4) USER:jboss CREATING new asset name [TestRule] in package [TestCreate]
INFO  [org.drools.guvnor.server.RepositoryAssetService] (http-/127.0.0.1:8080-4) USER:jboss CHECKING IN asset: [Bankruptcy history] UUID: [968c9b3c-bc19-40ba-bb38-44435956ccee] 
INFO  [org.drools.guvnor.server.RepositoryPackageOperations] (http-/127.0.0.1:8080-4) USER:jboss SAVING package [AddNewPackage]
INFO  [org.drools.guvnor.server.RepositoryPackageOperations] (http-/127.0.0.1:8080-4) USER:jboss REMOVEING package [AddNewPackage]

This solution is part of Red Hat’s fast-track publication program, providing a huge library of solutions that Red Hat engineers have created while supporting our customers. To give you the knowledge you need the instant it becomes available, these articles may be presented in a raw and unedited form.

Close

Welcome! Check out the Getting Started with Red Hat page for quick tours and guides for common tasks.