Ace:JSON Interface
From Adapt
The following functionality is visible through a JSON interface. To generate JSON output, append json=1 to the request on any supported servlet.
/Status
Returns an overview of all collections in the current ACE installation
Parameters
- none
Output
A list containing the replication details for all collections is returned. Unless otherwise noted, all values are strings
collections : [ - array containing the following properties id - numeric ID of collection (long) name - descriptive name directory - base directory lastSync - date of last sync (Tue Sep 23 12:31:21 EDT 2008) storage - string name for storage type checkPeriod - int for number of days to check collection proxyData - boolean, true if data may be proxied through ACE auditTokens - boolean, should digests and tokens be audited along w/ files state - char, current state of collection .... totalFiles - long, number of files in collection fileAuditRunning - boolean, true if a file audit is in progress tokenAuditRunning - boolean, true if a token audit is in progress The following objects will ONLY exist if a file or token audit is running fileAudit : { totalErrors - long, total number of errors encountered thus far newFilesFound - long, new files found in collection filesSeen - long, total files processes so far lastFileSeen - last file processed tokensAdded - long, new tokens issued during this audit } tokenAudit : { totalErrors - long, total number of errors encountered thus far tokensSeen - long, total number of digests/tokens loaded validTokens - number of tokensa/digests validated against round summaries } ]
Example
Invoking URL: http://localhost:8080/ace-am/Status?json=1
Output
{"collections": [ { "id": 18, "name": "3 layer, 10files, 50dirs", "directory": "/", "lastSync": "Wed Jan 07 12:25:54 EST 2009", "storage": "benchmark", "checkPeriod": 0, "proxyData": false, "auditTokens": false, "state": "A", "totalFiles": 1250000, "fileAuditRunning": true, "tokenAuditRunning": false, "fileAudit": { "totalErrors": 0, "newFilesFound": 0, "filesSeen": 161468, "lastFileSeen": "/dir-6/dir-22/dir-46/file-7", "tokensAdded": 0 } } ]}
/EventLog
Event log is a session away log servlet that can be used to query for log events. Events are attached to a collection, a particular invocation of an audit called a session, and to a particular item by path.
Parameters
- start - log entry id to start display at
- count - number of results to return
- toggletype - filter to toggle, one of 'errors','missing','newmaster','sync'
- top
- sessionId - sessionID to get events for, or set to 0 to clear
- logpath - path to get events for, or set to empty to clear
- collection - collection to retrieve events for, or set to 0 to clear
- clear - set to 1 to reset any filters
Output
Log items along with current paging and query information for the log
session - long, current session filter if any (opt) collection - long, current collection filter (opt) logpath - current path filter (opt) events : [ array containing log events id - long, numeric ID of log entry date - timestamp of entry session - long, session this entry belongs to type - type of log entry, complete list available at [Ace:Log Messages] collection - long, collection this entry is attached to (opt) path - path this item is attached to description - descriptive message for this entry ]
Example