Listing all the audit logs for an audit application uses the listAuditEntriesForAuditApp method of the AuditApi.
For more information about this ReST API endpoint, see List Audit Entries (Logs) for an Audit Application.
For a description of the common parameters, such as fields, see Common Parameters.
import org.alfresco.core.handler.AuditApi; import org.alfresco.core.model.AuditEntryEntry; import org.alfresco.core.model.AuditEntryPaging; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; import java.io.IOException; import java.util.ArrayList; import java.util.List; @Component public class ListAuditLogsCmd { static final Logger LOGGER = LoggerFactory.getLogger(ListAuditLogsCmd.class); @Autowired AuditApi auditApi; public void execute(String auditAppId) throws IOException { Integer skipCount = 0; Integer maxItems = 100; String where = null; List<String> fields = null; List<String> include = new ArrayList<>(); List<String> orderBy = null; // Include the log values include.add("values"); // Controls if the response provides the total numbers of items in the collection. // If not supplied then the default value is false. Boolean omitTotalItems = true; LOGGER.info("Listing logs for audit application {}:", auditAppId); AuditEntryPaging auditLogs = auditApi.listAuditEntriesForAuditApp( auditAppId, skipCount, omitTotalItems, orderBy, maxItems, where, include, fields).getBody(); for (AuditEntryEntry auditAppEntry: auditLogs.getList().getEntries()) { String username = "N/A"; if (auditAppEntry.getEntry().getCreatedByUser() != null) { username = auditAppEntry.getEntry().getCreatedByUser().getId(); } String log = null; if (auditAppEntry.getEntry().getValues().toString().length() > 60) { log = auditAppEntry.getEntry().getValues().toString().substring(0, 60); } else { log = auditAppEntry.getEntry().getValues().toString(); } LOGGER.info(" {} {} {}", auditAppEntry.getEntry().getCreatedAt(), username, log); } } }
Note that you have to add values to the include parameter for the logs to include all the data. Also, the audit log value have been truncated for readability.
Executing this code will list the audit logs for passed in audit app id. The audit log values have been trimmed:
% java -jar target/rest-api-0.0.1-SNAPSHOT.jar list-audit-logs alfresco-access 2021-05-07 14:46:29.977 INFO 40544 --- [ main] o.a.tutorial.restapi.RestApiApplication : Started RestApiApplication in 3.493 seconds (JVM running for 3.948) 2021-05-07 14:46:29.980 INFO 40544 --- [ main] o.a.tutorial.restapi.RestApiApplication : args[0]: list-audit-logs 2021-05-07 14:46:29.981 INFO 40544 --- [ main] o.a.tutorial.restapi.RestApiApplication : args[1]: alfresco-access 2021-05-07 14:46:29.981 INFO 40544 --- [ main] o.a.tutorial.restapi.ListAuditLogsCmd : Listing logs for audit application alfresco-access: 2021-05-07 14:46:30.376 INFO 40544 --- [ main] o.a.tutorial.restapi.ListAuditLogsCmd : 2021-05-07T11:48:12.758Z admin {/alfresco-access/login/user=admin} 2021-05-07 14:46:30.376 INFO 40544 --- [ main] o.a.tutorial.restapi.ListAuditLogsCmd : 2021-05-07T13:30:46.256Z N/A {/alfresco-access/loginFailure/user=martin} 2021-05-07 14:46:30.377 INFO 40544 --- [ main] o.a.tutorial.restapi.ListAuditLogsCmd : 2021-05-07T13:30:58.768Z N/A {/alfresco-access/loginFailure/user=test} 2021-05-07 14:46:30.377 INFO 40544 --- [ main] o.a.tutorial.restapi.ListAuditLogsCmd : 2021-05-07T13:31:07.650Z admin {/alfresco-access/transaction/sub-actions=createNode updateN 2021-05-07 14:46:30.379 INFO 40544 --- [ main] o.a.tutorial.restapi.ListAuditLogsCmd : 2021-05-07T13:31:08.087Z admin {/alfresco-access/transaction/sub-actions=createNode updateN 2021-05-07 14:46:30.379 INFO 40544 --- [ main] o.a.tutorial.restapi.ListAuditLogsCmd : 2021-05-07T13:31:08.141Z admin {/alfresco-access/transaction/sub-actions=createNode updateN 2021-05-07 14:46:30.379 INFO 40544 --- [ main] o.a.tutorial.restapi.ListAuditLogsCmd : 2021-05-07T13:31:08.800Z admin {/alfresco-access/transaction/sub-actions=updateContent upda 2021-05-07 14:46:30.379 INFO 40544 --- [ main] o.a.tutorial.restapi.ListAuditLogsCmd : 2021-05-07T13:31:08.853Z admin {/alfresco-access/transaction/sub-actions=updateContent upda 2021-05-07 14:46:30.380 INFO 40544 --- [ main] o.a.tutorial.restapi.ListAuditLogsCmd : 2021-05-07T13:31:08.961Z admin {/alfresco-access/transaction/sub-actions=updateContent upda 2021-05-07 14:46:30.380 INFO 40544 --- [ main] o.a.tutorial.restapi.ListAuditLogsCmd : 2021-05-07T13:32:04.579Z admin {/alfresco-access/logout/user=admin} 2021-05-07 14:46:30.381 INFO 40544 --- [ main] o.a.tutorial.restapi.ListAuditLogsCmd : 2021-05-07T13:32:10.404Z test {/alfresco-access/login/user=test} 2021-05-07 14:46:30.381 INFO 40544 --- [ main] o.a.tutorial.restapi.ListAuditLogsCmd : 2021-05-07T13:32:11.261Z test {/alfresco-access/transaction/sub-actions=createNode updateN 2021-05-07 14:46:30.381 INFO 40544 --- [ main] o.a.tutorial.restapi.ListAuditLogsCmd : 2021-05-07T13:32:11.316Z test {/alfresco-access/transaction/sub-actions=createNode updateN 2021-05-07 14:46:30.381 INFO 40544 --- [ main] o.a.tutorial.restapi.ListAuditLogsCmd : 2021-05-07T13:32:11.371Z test {/alfresco-access/transaction/sub-actions=createNode updateN 2021-05-07 14:46:30.381 INFO 40544 --- [ main] o.a.tutorial.restapi.ListAuditLogsCmd : 2021-05-07T13:32:11.436Z test {/alfresco-access/transaction/sub-actions=createNode updateN 2021-05-07 14:46:30.382 INFO 40544 --- [ main] o.a.tutorial.restapi.ListAuditLogsCmd : 2021-05-07T13:32:12.075Z test {/alfresco-access/transaction/sub-actions=updateContent upda 2021-05-07 14:46:30.382 INFO 40544 --- [ main] o.a.tutorial.restapi.ListAuditLogsCmd : 2021-05-07T13:32:12.101Z test {/alfresco-access/transaction/sub-actions=updateContent upda 2021-05-07 14:46:30.382 INFO 40544 --- [ main] o.a.tutorial.restapi.ListAuditLogsCmd : 2021-05-07T13:32:12.124Z test {/alfresco-access/transaction/sub-actions=updateContent upda 2021-05-07 14:46:30.383 INFO 40544 --- [ main] o.a.tutorial.restapi.ListAuditLogsCmd : 2021-05-07T13:32:24.764Z test {/alfresco-access/logout/user=test} 2021-05-07 14:46:30.383 INFO 40544 --- [ main] o.a.tutorial.restapi.ListAuditLogsCmd : 2021-05-07T13:32:26.423Z admin {/alfresco-access/login/user=admin} 2021-05-07 14:46:30.384 INFO 40544 --- [ main] o.a.tutorial.restapi.ListAuditLogsCmd : 2021-05-07T13:32:37.917Z admin {/alfresco-access/transaction/sub-actions=createNode updateN 2021-05-07 14:46:30.384 INFO 40544 --- [ main] o.a.tutorial.restapi.ListAuditLogsCmd : 2021-05-07T13:32:47.013Z admin {/alfresco-access/transaction/sub-actions=createNode updateN 2021-05-07 14:46:30.385 INFO 40544 --- [ main] o.a.tutorial.restapi.ListAuditLogsCmd : 2021-05-07T13:32:51.284Z admin {/alfresco-access/transaction/sub-actions=addNodeAspect crea 2021-05-07 14:46:30.385 INFO 40544 --- [ main] o.a.tutorial.restapi.ListAuditLogsCmd : 2021-05-07T13:32:51.363Z admin {/alfresco-access/transaction/sub-actions=readContent addNod 2021-05-07 14:46:30.385 INFO 40544 --- [ main] o.a.tutorial.restapi.ListAuditLogsCmd : 2021-05-07T13:32:51.458Z admin {/alfresco-access/transaction/sub-actions=updateNodeProperti 2021-05-07 14:46:30.385 INFO 40544 --- [ main] o.a.tutorial.restapi.ListAuditLogsCmd : 2021-05-07T13:32:51.511Z admin {/alfresco-access/transaction/sub-actions=readContent, /alfr 2021-05-07 14:46:30.385 INFO 40544 --- [ main] o.a.tutorial.restapi.ListAuditLogsCmd : 2021-05-07T13:32:54.271Z admin {/alfresco-access/transaction/sub-actions=addNodeAspect crea 2021-05-07 14:46:30.385 INFO 40544 --- [ main] o.a.tutorial.restapi.ListAuditLogsCmd : 2021-05-07T13:32:54.343Z admin {/alfresco-access/transaction/sub-actions=updateNodeProperti 2021-05-07 14:46:30.385 INFO 40544 --- [ main] o.a.tutorial.restapi.ListAuditLogsCmd : 2021-05-07T13:32:54.443Z admin {/alfresco-access/transaction/sub-actions=updateNodeProperti 2021-05-07 14:46:30.385 INFO 40544 --- [ main] o.a.tutorial.restapi.ListAuditLogsCmd : 2021-05-07T13:32:54.468Z admin {/alfresco-access/transaction/sub-actions=readContent, /alfr 2021-05-07 14:46:30.385 INFO 40544 --- [ main] o.a.tutorial.restapi.ListAuditLogsCmd : 2021-05-07T13:33:03.656Z admin {/alfresco-access/transaction/sub-actions=createNode updateN 2021-05-07 14:46:30.385 INFO 40544 --- [ main] o.a.tutorial.restapi.ListAuditLogsCmd : 2021-05-07T13:33:03.784Z admin {/alfresco-access/transaction/sub-actions=readContent, /alfr 2021-05-07 14:46:30.385 INFO 40544 --- [ main] o.a.tutorial.restapi.ListAuditLogsCmd : 2021-05-07T13:33:04.218Z admin {/alfresco-access/transaction/sub-actions=addNodeAspect, /al 2021-05-07 14:46:30.386 INFO 40544 --- [ main] o.a.tutorial.restapi.ListAuditLogsCmd : 2021-05-07T13:33:04.264Z admin {/alfresco-access/transaction/sub-actions=readContent, /alfr 2021-05-07 14:46:30.386 INFO 40544 --- [ main] o.a.tutorial.restapi.ListAuditLogsCmd : 2021-05-07T13:33:04.347Z admin {/alfresco-access/transaction/sub-actions=readContent, /alfr 2021-05-07 14:46:30.386 INFO 40544 --- [ main] o.a.tutorial.restapi.ListAuditLogsCmd : 2021-05-07T13:33:04.754Z admin {/alfresco-access/transaction/sub-actions=addNodeAspect crea 2021-05-07 14:46:30.386 INFO 40544 --- [ main] o.a.tutorial.restapi.ListAuditLogsCmd : 2021-05-07T13:33:04.806Z admin {/alfresco-access/transaction/sub-actions=addNodeAspect upda 2021-05-07 14:46:30.386 INFO 40544 --- [ main] o.a.tutorial.restapi.ListAuditLogsCmd : 2021-05-07T13:33:04.878Z admin {/alfresco-access/transaction/sub-actions=updateNodeProperti 2021-05-07 14:46:30.386 INFO 40544 --- [ main] o.a.tutorial.restapi.ListAuditLogsCmd : 2021-05-07T13:33:04.899Z admin {/alfresco