public class ESAuditBackend extends AbstractAuditBackend implements AuditBackend
AuditBackend interface using Elasticsearch persistence| Modifier and Type | Field and Description |
|---|---|
protected org.elasticsearch.client.Client |
esClient |
protected static org.apache.commons.logging.Log |
log |
static String |
MIGRATION_BATCH_SIZE_PROP |
static int |
MIGRATION_DEFAULT_BACTH_SIZE |
static String |
MIGRATION_DONE_EVENT |
static String |
MIGRATION_FLAG_PROP |
protected BaseLogEntryProvider |
provider |
static String |
SEQ_NAME |
component, expressionEvaluator, FORCE_AUDIT_FACET| Constructor and Description |
|---|
ESAuditBackend() |
| Modifier and Type | Method and Description |
|---|---|
void |
addLogEntries(List<LogEntry> entries)
Adds given log entries.
|
protected org.elasticsearch.index.query.FilterBuilder |
buildFilter(PredicateDefinition[] predicates,
DocumentModel searchDocumentModel) |
protected List<LogEntry> |
buildLogEntries(org.elasticsearch.action.search.SearchResponse searchResponse) |
org.elasticsearch.action.search.SearchRequestBuilder |
buildQuery(String query,
Map<String,Object> params) |
org.elasticsearch.action.search.SearchRequestBuilder |
buildSearchQuery(String fixedPart,
PredicateDefinition[] predicates,
DocumentModel searchDocumentModel) |
void |
deactivate() |
protected void |
ensureUIDSequencer(org.elasticsearch.client.Client esClient)
Ensures the audit sequence returns an UID greater or equal than the maximum log entry id.
|
String |
expandQueryVariables(String query,
Map<String,Object> params) |
String |
expandQueryVariables(String query,
Object[] params) |
protected org.elasticsearch.client.Client |
getClient() |
protected String |
getESIndexName() |
Long |
getEventsCount(String eventId) |
List<LogEntry> |
getLogEntriesFor(String uuid,
Map<String,FilterMapEntry> filterMap,
boolean doDefaultSort) |
LogEntry |
getLogEntryByID(long id)
Returns a given log entry given its id.
|
protected BaseLogEntryProvider |
getProvider() |
protected org.elasticsearch.action.search.SearchRequestBuilder |
getSearchRequestBuilder() |
protected boolean |
isMigrationDone() |
protected boolean |
isNonNullParam(Object[] val) |
protected void |
logSearchRequest(org.elasticsearch.action.search.SearchRequestBuilder request) |
protected void |
logSearchResponse(org.elasticsearch.action.search.SearchResponse response) |
String |
migrate(int batchSize) |
List<?> |
nativeQuery(String query,
Map<String,Object> params,
int pageNb,
int pageSize)
Returns a batched list of entries.
|
ExtendedInfo |
newExtendedInfo(Serializable value)
Create a new ExtendedInfo instance
|
void |
onApplicationStarted() |
List<LogEntry> |
queryLogsByPage(String[] eventIds,
Date limit,
String[] categories,
String path,
int pageNb,
int pageSize) |
List<LogEntry> |
queryLogsByPage(String[] eventIds,
String dateRange,
String[] categories,
String path,
int pageNb,
int pageSize) |
long |
syncLogCreationEntries(String repoId,
String path,
Boolean recurs)
Forces log Synchronisation for a branch of the repository.
|
activate, buildEntryFromEvent, doCreateAndFillEntryFromDocument, doPutExtendedInfos, doSyncNode, getAuditableEventNames, getLogEntriesFor, guardedDocument, guardedDocumentChildren, logEvent, logEvents, nativeQuery, nativeQueryLogs, newLogEntry, populateExtendedInfo, queryLogs, queryLogsByPage, queryLogsByPage, syncLogCreationEntriesclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitactivategetLogEntriesFor, nativeQuery, nativeQueryLogs, queryLogs, queryLogsByPage, queryLogsByPagegetAuditableEventNames, logEvent, logEvents, newLogEntrypublic static final String SEQ_NAME
public static final String MIGRATION_FLAG_PROP
public static final String MIGRATION_BATCH_SIZE_PROP
public static final String MIGRATION_DONE_EVENT
public static final int MIGRATION_DEFAULT_BACTH_SIZE
protected org.elasticsearch.client.Client esClient
protected static final org.apache.commons.logging.Log log
protected BaseLogEntryProvider provider
public ESAuditBackend()
protected org.elasticsearch.client.Client getClient()
protected boolean isMigrationDone()
public void deactivate()
deactivate in interface AuditBackendpublic List<LogEntry> getLogEntriesFor(String uuid, Map<String,FilterMapEntry> filterMap, boolean doDefaultSort)
getLogEntriesFor in interface AuditReaderprotected List<LogEntry> buildLogEntries(org.elasticsearch.action.search.SearchResponse searchResponse)
protected org.elasticsearch.action.search.SearchRequestBuilder getSearchRequestBuilder()
public LogEntry getLogEntryByID(long id)
AuditReadergetLogEntryByID in interface AuditReaderid - the log entry identifierpublic org.elasticsearch.action.search.SearchRequestBuilder buildQuery(String query, Map<String,Object> params)
public String expandQueryVariables(String query, Object[] params)
public List<?> nativeQuery(String query, Map<String,Object> params, int pageNb, int pageSize)
AuditReadernativeQuery in interface AuditReaderquery - a JPA query language query if implementation of audit backend is JPA (< 7.3 or
audit.elasticsearch.enabled=false) and JSON if implementation is Elasticsearchparams - parameters for the querypageNb - the page number (starts at 1)pageSize - the number of results per pagepublic List<LogEntry> queryLogsByPage(String[] eventIds, Date limit, String[] categories, String path, int pageNb, int pageSize)
queryLogsByPage in interface AuditReaderpublic List<LogEntry> queryLogsByPage(String[] eventIds, String dateRange, String[] categories, String path, int pageNb, int pageSize)
queryLogsByPage in interface AuditReaderpublic void addLogEntries(List<LogEntry> entries)
AuditLoggeraddLogEntries in interface AuditLoggerentries - the list of log entries.public Long getEventsCount(String eventId)
getEventsCount in interface AuditAdminprotected BaseLogEntryProvider getProvider()
public long syncLogCreationEntries(String repoId, String path, Boolean recurs)
AuditAdminsyncLogCreationEntries in interface AuditAdminprotected org.elasticsearch.index.query.FilterBuilder buildFilter(PredicateDefinition[] predicates, DocumentModel searchDocumentModel)
public org.elasticsearch.action.search.SearchRequestBuilder buildSearchQuery(String fixedPart, PredicateDefinition[] predicates, DocumentModel searchDocumentModel)
protected boolean isNonNullParam(Object[] val)
protected void logSearchResponse(org.elasticsearch.action.search.SearchResponse response)
protected void logSearchRequest(org.elasticsearch.action.search.SearchRequestBuilder request)
public void onApplicationStarted()
onApplicationStarted in interface AuditBackendprotected void ensureUIDSequencer(org.elasticsearch.client.Client esClient)
public ExtendedInfo newExtendedInfo(Serializable value)
AuditLoggernewExtendedInfo in interface AuditLoggernewExtendedInfo in class AbstractAuditBackendprotected String getESIndexName()
Copyright © 2016 Nuxeo SA. All rights reserved.