General
XpoLog XPLG exposes a URL based API to the users. The API exposes a set of HTTP/S calls that can be used to retrieve information from XpoLog:
URL that returns events from XpoLog Search in XML/CSV format
URL that returns a Dashboards latest result in PDF format
URL to open Search console on an executed search query
URL to open a specific log in the Log Viewer
URL to enter XpoLog under specific Folder(s) context
URL to enter XpoLog under specific AppTag(s) context
URL that returns Collected Data Information
URL that returns the Folders and Logs information
URL that returns a specific log's information
URL that returns multiple log's information
Security
...
XPLG.
The article describes the syntax calls with the available parameters.
Background
XPLG’s API provides multiple calls to the system to get data, export dashboard, query the configuration and more.
The call are done via URL over HTTP/S.
In case security is activated in XPLG (login is required) then using the URL based API will require passing user's credentials in order to login into the system prior to executing the API command.
It is required to pass the username and password in the URL to
...
XPLG in order to get the command executed.
Add to each link that is detailed below at the end:
&autoLogin=true&username=[USER_NAME]&password=[PASSWORD]
[USER_NAME] = the user name which the API will use to login
[PASSWORD] = the password of the user name
...
API Endpoints
...
...
- token=UNIQUE_TOKEN_FROM_FIRST_EXECUTION - returned and may be used only if pagination is set to true, and only after an API command execution which is not already using an existing unique token.
If token is added to the URL, each execution of the URL returns the next page of that execution result (see result example below of pagination = true).
In order to access the next pages of that execution result, it is required to add to the URL the parameter:
&token=UNIQUE_TOKEN_FROM_FIRST_EXECUTION - any additional execution using the unique token will return the next page of results (there is no paging backwards, only forward).
...
The following is the XML structure of the API execution response (pagination = false):
<APIResult>
<Status state="OK" token="" numberOfResults="Actual number of results or maxNumOfRecords if exists/reached">
<Url>
[URL_TO_RESULT_FILE]
</Url>
<Message/>
</Status>
<Data>
</Data>
</APIResult>
The following is the XML structure of the API execution response (pagination = true):
<APIResult>
<Status state="OK" token="EXECUTION_TOKEN" numberOfResults="maxRecordsPerPage or maximum 100 per page (XpoLog default)">
<Url>
[URL_TO_RESULT_FILE]
</Url>
<Message/>
</Status>
<Data>
</Data>
</APIResult>
Pegina
Tag Path | Description |
---|---|
APIResult | General document root tag |
Status | The state of the API execution. Optional values OK/Fail |
Url | Exists only when the status is OK. The URL to a file containing the API execution result. |
Message | Exists only when the status is Fail. |
Data | Contains the API execution result. |
Error Code | Description |
---|---|
1 | Internal Error: An error occurred, please try again. If the problem persists, please contact XpoLog support |
2 | Results Exceed Max Allowed Threshold: Result's events count (XXX) is larger than a given limit (XXX) |
3 | Request timeout |
4 | Request Canceled: Search API action was canceled |
5 | Resources Exceed: Failed to preform search due to limited resource |
Examples
(You need to change machine/port/logs names, ids / folder names, ids / application names, ids if used to be relevant to your environment)
- Returns records matching the search query “error or fail* in logs that their names start with “log4j” in the specified time frame. Result is limited to maximum 1000 log records in csv format:
http://localhost:30303/logeye/view/api/widgetAPI.jsp?widgetId=searchAPI&searchQuery=error or fail* in log.log4j*&startTimeFullStr=01/01/2014 00:00:00&endTimeFullStr=02/02/2014 00:00:00&maxNumOfRecords=1000&resultFormat=csv
...
http://localhost:30303/logeye/view/api/widgetAPI.jsp?widgetId=searchAPI&searchQuery=error or exception&fixedInterval=last7Days&maxNumOfRecords=1000&resultFormat=xml
...
Runs a search query on a specified time frame and returns results in CSV or XML format
URL that returns a Dashboards latest result in PDF format
Returns a dashboard from XPLG in PDF
URL to open Search console on an executed search query
Opens the XPLG search console on a search result page
URL that returns Collected Data Information
Returns information about the data that is collected by the system in JSON format
URL that returns the Folders and Logs information
Returns the existing Folders and Logs structure from XPLG in JSON format
URL that returns a specific log's information
Returns information about specific log in XPLG in JSON format
URL that returns multiple log's information
Returns information about multiple logs in XPLG in JSON format
...
Anchor | ||||
---|---|---|---|---|
|
URL that returns events from XPLG Search in XML/CSV format
http://[MACHINE_NAME]:[XPLG_PORT]/logeye/view/api/widgetAPI.jsp?widgetId=searchAPI&searchQuery=
...
URL that returns a Dashboards latest result in PDF format
- http://[MACHINE_NAME]:[XPOLOG_PORT]/logeye/view/api/dashboardAPI.jsp?action=export&appName=[see item 2]&viewName=[see item 3]
- appName=a name of an existing App in XpoLog (case insensitive).
- viewName=a name of an existing Dashboard in XpoLog (case insensitive).
Examples
(You need to change machine/port/logs names, ids / folder names, ids / application names, ids if used to be relevant to your environment)
- Returns the Dashboard “Dashboard-1” in PDF format
http://localhost:30303/logeye/view/api/dashboardAPI.jsp?action=export&appName=App-1&viewName=Dashboard-1
...
URL to open Search console on an executed search query
- http://[MACHINE_NAME]:[XPOLOG_PORT]/logeye/search/view/loadSearchModel.jsp?searchQuery=[see item 2]&fixedInterval=[see item 3]&startTimeFullStr=[see item 4]&endTimeFullStr=[see item 4]
- searchQuery=a query as used in XpoSearch console
- fixedInterval=optional values are: last15Minutes, last30Minutes, last60Minutes, last3Hours, last12Hours, last24Hours, last7Days, last14Days, last1Months, last6Months, currentDay, previousDay, currentWeek, previousWeek, allData
IMPORTANT: when using fixedInterval only values from the above list can be provided as is. Optional; if fixedInterval is used then startTimeFullStr and endTimeFullStr should not be used. - startTimeFullStr=the start time full string, formatted according to the XpoLog system format; default format is MM/dd/yyyy HH:mm:ss
endTimeFullStr=the end time full string, formatted according to the XpoLog system format; default format is MM/dd/yyyy HH:mm:ss
Optional; used only if fixedInterval is missing; if used, both values are mandatory.
Examples
(You need to change machine/port/logs names, ids / folder names, ids / application names, ids if used to be relevant to your environment)
- Presents Search console after execution of the search query “error” in the specified time frame:
http://localhost:30303/logeye/search/view/loadSearchModel.jsp?searchQuery=error&startTimeFullStr=01/01/2014 00:00:00&endTimeFullStr=02/02/2014 00:00:00
...
http://localhost:30303/logeye/search/view/loadSearchModel.jsp?searchQuery=error&fixedInterval=last7Days
...
URL to open a specific log in the Log Viewer
- http://[MACHINE_NAME]:[XPOLOG_PORT]/logeye/view/api/logViewAPI.jsp?logId=[see in item 2]&searchQuery=[see item 3]&logFilterName=[see item 4]&filterName=[see item 5]&filterId=[see item 6]&startTimeFullStr=[see item 7]&endTimeFullStr=[see item 8]&opdirect=[see item 9]&expandLogViewer=[see item 10]
- logId=one or more log ids, separated by comma (mandatory parameter)
- searchQuery=a term to filter the log by (similar syntax to XpoSearch)
- logFilterName=the name to be given to the filter defined in item c; if missing, the name of the filter will be ‘external filter’
- filterName=the name of an existing filter that should be activate on the log; used only if the searchQuery parameter is missing
- filterId=the id of an existing filter that should be activate on the log; used only if the searchQuery parameter is missing or if the filterName parameter is missing or does not match an existing filter’s name
- startTimeFullStr=the start time full string, formatted according to the XpoLog system format; default format is MM/dd/yyyy HH:mm:ss
- endTimeFullStr=the end time full string, formatted according to the XpoLog system format; default format is MM/dd/yyyy HH:mm:ss
- opdirect=start will display the first records of the result; last will display the last records. Default is start.
- expandLogViewer=true will present the log in the viewer without the folder and logs and the menu presented. Default is false.
...
[see item 2]&fixedInterval=
...
[see item 3]&startTimeFullStr=[see item 4]&endTimeFullStr=[see item 4]&maxNumOfRecords=[see item 5]&resultFormat=[see item 6]&paginate=[see item 7]&token=[see item 7.a]&maxRecordsPerPage=[see item 8]&timeout=[see item 9]&abortOn=[see item 10]
searchQuery=a query as used in XpoSearch console
fixedInterval=optional values are: last15Minutes, last30Minutes, last60Minutes, last3Hours, last12Hours, last24Hours, last7Days, last14Days, last1Months, last6Months, currentDay, previousDay, currentWeek, previousWeek, allData
IMPORTANT: when using fixedInterval only values from the above list can be provided as is. Optional; if fixedInterval is used then startTimeFullStr and endTimeFullStr should not be used.startTimeFullStr=the start time full string, formatted according to the XPLG system format; default format is MM/dd/yyyy HH:mm:ss
endTimeFullStr=the end time full string, formatted according to the XPLG system format; default format is MM/dd/yyyy HH:mm:ss
Optional; used only if fixedInterval is missing; if used, both values are mandatory.maxNumOfRecords=the maximal number of records to return in the result; if missing, the default value is taken from the widgets.searchAPI.maxNumOfRecords XPLG system property (default is 100 but may be modified)
resultFormat=the format in which the result will be returned. Optional values xml/csv (case sensitive)
paginate=activate pagination; optional values true/false. If pagination is set to true, a unique token will be generated per execution (unless the API command will specify an existing token to access next pages of an existing execution as detailed below at 7.a).
token=UNIQUE_TOKEN_FROM_FIRST_EXECUTION - returned and may be used only if pagination is set to true, and only after an API command execution which is not already using an existing unique token.
If token is added to the URL, each execution of the URL returns the next page of that execution result (see result example below of pagination = true).
In order to access the next pages of that execution result, it is required to add to the URL the parameter:
&token=UNIQUE_TOKEN_FROM_FIRST_EXECUTION - any additional execution using the unique token will return the next page of results (there is no paging backwards, only forward).
maxRecordsPerPage=the maximal number of results per page; If missing, the default value is 100 records per page.
timeout=the maximum time(milliseconds) given for a query to run. In case the time exceeds the given threshold, the search query stops and an error message is returned (see error codes table).
abortOn=the maximum number of allowed results. In case the number exceeds the given threshold, the search query stops and an error message is returned (see error codes table).
The following is the XML structure of the API execution response (pagination = false):
Code Block |
---|
<APIResult>
<Status state="OK" token="" numberOfResults="Actual number of results or maxNumOfRecords if exists/reached">
<Url>
[URL_TO_RESULT_FILE]
</Url>
<Message/>
</Status>
<Data>
</Data>
</APIResult> |
The following is the XML structure of the API execution response (pagination = true):
Code Block |
---|
<APIResult>
<Status state="OK" token="EXECUTION_TOKEN" numberOfResults="maxRecordsPerPage or maximum 100 per page (XPLG default)">
<Url>
[URL_TO_RESULT_FILE]
</Url>
<Message/>
</Status>
<Data>
</Data>
</APIResult> |
Tag Path | Description |
---|---|
APIResult | General document root tag |
Status | The state of the API execution. Optional values OK/Fail |
Url | Exists only when the status is OK. |
Message | Exists only when the status is Fail. |
Data | Contains the API execution result. |
Error Code | Description |
---|---|
1 | Internal Error: An error occurred, please try again. If the problem persists, please contact XPLG support |
2 | Results Exceed Max Allowed Threshold: Result's events count (XXX) is larger than a given limit (XXX) |
3 | Request timeout |
4 | Request Canceled: Search API action was canceled |
5 | Resources Exceed: Failed to preform search due to limited resource |
Examples
(You need to change machine/port/logs names, ids / folder names, ids / application names, ids if used to be relevant to your environment)
- Enter the viewer on the log Application_1235558747694 filtered on records that contain ‘error or information’ (the name of the temporary filter is set to be testQuery):
http://localhost:30303/logeye/view/api/logViewAPI.jsp?logId=Application_1235558747694&searchQuery=error or information&logFilterName=testQuery
...
Returns records matching the search query “error or fail* in logs that their names start with “log4j” in the specified time frame. Result is limited to maximum 1000 log records in csv format:
http://localhost:30303/logeye/view/api/
...
widgetAPI.jsp?
...
widgetId=
...
searchAPI&
...
searchQuery=error
...
or fail* in log.log4j*&startTimeFullStr=01/01/2014 00:00:00&endTimeFullStr=02/02/2014 00:00:00&maxNumOfRecords=1000&resultFormat=csv
- Returns records matching the search query “error or exception in in all logs in the last 7 days’ time frame. Result is limited to maximum 1000 log records in xml format:
http://localhost:30303/logeye/view/api/
...
widgetAPI.jsp?
...
widgetId=searchAPI&searchQuery=error or exception&fixedInterval=last7Days&maxNumOfRecords=1000&resultFormat=xml
- Returns the complex search query '* in app.Windows Event Logs | count | group by event' result in the last 7 days’ time frame. Result is limited to maximum 1000 entries in csv format. In this example the URL also contains a username and password (admin/admin) that will perform a login to XPLG in order to be able to execute the search query:
http://localhost:30303/logeye/view/api/
...
widgetAPI.jsp?
...
widgetId=searchAPI&searchQuery=*%20in%20app.Windows%20Event%20Logs%20|%20count%20|%20group%20by%20event&fixedInterval=last7Days&maxNumOfRecords=1000&resultFormat=csv&autoLogin=true&username=admin&password=admin
Anchor | ||||
---|---|---|---|---|
|
URL that returns a Dashboards latest result in PDF format
http://[MACHINE_NAME]:[
...
XPLG_PORT]/logeye/view/api/
...
dashboardAPI.jsp?
...
action=
...
export&appName=[see item 2]&
...
viewName=[see item 3]
appName=a name of an existing App in XPLG (case insensitive).
viewName=a name of an existing Dashboard in XPLG (case insensitive).
Examples
(You need to change machine/port/logs names, ids / folder names, ids / application names, ids if used to be relevant to your environment)
-
...
Returns the Dashboard “Dashboard-1” in PDF format
http://localhost:30303/logeye/view/api/
...
dashboardAPI.jsp?
...
action=
...
export&
...
appName=App-1&viewName=Dashboard-1
Anchor | ||||
---|---|---|---|---|
|
URL to open Search console on an executed search query
http://
...
URL to enter XpoLog under specific AppTag(s) context
http://[MACHINE_NAME]:[XPOLOG_PORT]/logeye/componentAction.jsp?selectedCompId=XpoLog&forward=root.jsp?applicationId=[see item 2]&mainPage=view/mainView.jsp
- applicationId=a comma separated list of AppTags ids (if an empty application id is provided, it will reset any AppTag context).
...
[MACHINE_NAME]:[XPLG_PORT]/logeye/search/view/loadSearchModel.jsp?searchQuery=[see item 2]&fixedInterval=[see item 3]&startTimeFullStr=[see item 4]&endTimeFullStr=[see item 4]
searchQuery=a query as used in XpoSearch console
fixedInterval=optional values are: last15Minutes, last30Minutes, last60Minutes, last3Hours, last12Hours, last24Hours, last7Days, last14Days, last1Months, last6Months, currentDay, previousDay, currentWeek, previousWeek, allData
IMPORTANT: when using fixedInterval only values from the above list can be provided as is. Optional; if fixedInterval is used then startTimeFullStr and endTimeFullStr should not be used.startTimeFullStr=the start time full string, formatted according to the XPLG system format; default format is MM/dd/yyyy HH:mm:ss
endTimeFullStr=the end time full string, formatted according to the XPLG system format; default format is MM/dd/yyyy HH:mm:ss
Optional; used only if fixedInterval is missing; if used, both values are mandatory.
Examples
(You need to change machine/port/logs names, ids / folder names, ids / application names, ids if used to be relevant to your environment)
-
...
Presents Search console after execution of the search query “error” in the specified time frame:
http://localhost:30303/logeye/search/view/
...
loadSearchModel.jsp?
...
searchQuery=
...
error&
...
startTimeFullStr=01/01/2014 00:00:00&endTimeFullStr=02/02/2014 00:00:00
- Presents Search console after execution of the search query “error” in the specified time frame (last 7 days):
http://localhost:30303/logeye/search/
...
view/loadSearchModel.jsp?
...
searchQuery=
...
error&
...
fixedInterval=last7Days
Anchor | ||||
---|---|---|---|---|
|
URL that returns Collected Data Information
http://[MACHINE_NAME]:[
...
XPLG_PORT]/logeye/message/messageJsonApi.jsp?api=collectedDataInfo&type=[see item 2]&timeFrame=[see item 3]&detailsLevel=[see item 4]&maxNumberOfResults=[see item 5]
type = fixed string values: AppTags / Folders (default = Folders)
timeFrame = fixed string values: last15Minutes, last30Minutes, last60Minutes, last3Hours, last12Hours, last24Hours, last7Days, last14Days, last1Months, last6Months, currentDay, previousDay, currentWeek, previousWeek, allData (default = last24Hours)
detailsLevel = fixed string values: Basic, Detailed
Basic – returns a JSON specifying: AppTag/Folder based on specified type with AppTag/Folder name, number of defined log and number of collected logs.
Examples:
http://localhost:30303/logeye/message/messageJsonApi.jsp?api=collectedDataInfo&type=Folders&timeFrame=last24Hours&detailsLevel=Basic&autoLogin=true&username=admin&password=admin
Result JSON:
{"data":{"collectionData":[{"totalLogs":12,"Folders":"
...
XPLG System Logs","collectedLogs":5},{"totalLogs":1,"Folders":"Example Applications,WebLogic 10.0,xplg","collectedLogs":0},{"totalLogs":7,"Folders":"Example Logs","collectedLogs":0},{"totalLogs":5,"Folders":"Linux OS","collectedLogs":4},{"totalLogs":9,"Folders":"Demo,Tomcat,TX_EXAMPLE","collectedLogs":0},{"totalLogs":5,"Folders":"
...
XPLG EC2,jet.
...
XPLG.com,Linux OS","collectedLogs":4},{"totalLogs":4,"Folders":"ID,Tomcat","collectedLogs":3},{"totalLogs":9,"Folders":"WebSphere,Profiles,Server","collectedLogs":0},{"totalLogs":1,"Folders":"Example Applications,WebSphere 6.1.0.0","collectedLogs":0},{"totalLogs":1,"Folders":"
...
CloudXPLG","collectedLogs":0}]}}
http://localhost:30303/logeye/message/messageJsonApi.jsp?api=collectedDataInfo&type=AppTags&timeFrame=last24Hours&detailsLevel=Basic&autoLogin=true&username=admin&password=admin
Result JSON:
Code Block {"data":{"collectionData":[{"totalLogs":1,"collectedLogs":0,"AppTags":"Tomcat 5.0.28"},{"totalLogs":22,"collectedLogs":0,"AppTags":"PrudentialA"},{"totalLogs":1,"collectedLogs":0,"AppTags":"XplgWiki"},
...
{"totalLogs":4,"collectedLogs":3,"AppTags":"Tomcat"},{"totalLogs":1,"collectedLogs":0,"AppTags":"
...
LogLoud"},{"totalLogs":11,"collectedLogs":0,"AppTags":"DASTLab"},{"totalLogs":10,"collectedLogs":0,"AppTags":"Example AppTag"},
...
{"totalLogs":9,"collectedLogs":0,"AppTags":"
...
XPLG"},{"totalLogs":2,"collectedLogs":1,"AppTags":"Website"},{"totalLogs":1,"collectedLogs":0,"AppTags":"LabA_LoadTest"},
...
{"totalLogs":1,"collectedLogs":0,"AppTags":"Audit"},{"totalLogs":24,"collectedLogs":0,"AppTags":"AppFinTech_LoadLabA"},{"totalLogs":19,"collectedLogs":8,"AppTags":"Linux"},{"totalLogs":5,"collectedLogs":4,"AppTags":"Linux OS"},
...
{"totalLogs":7,"collectedLogs":0,"AppTags":"Weblogic 10.0"},{"totalLogs":10,"collectedLogs":0,"AppTags":"VOLoadTesting"},{"totalLogs":2,"collectedLogs":0,"AppTags":"Log4J"},
...
{"totalLogs":1,"collectedLogs":0,"AppTags":"JET-XPLG"},{"totalLogs":9,"collectedLogs":0,"AppTags":"WebSphere 6.1"},{"totalLogs":21,"collectedLogs":11,"AppTags":"ID"}]}}
Detailed – returns a JSON specifying: AppTag/Folder based on specified type, number of defined logs, number of collected logs and a list of uncollected logs with their sizes in bytes (comma separated full Folders path in
...
XPLG Folders and Logs tree).
Examples:
http://localhost:30303/logeye/message/messageJsonApi.jsp?api=collectedDataInfo&type=Folders&timeFrame=last24Hours&detailsLevel=Detailed&maxNumberOfResults=10&autoLogin=true&username=admin&password=admin
Result JSON:
{"data":{"collectionData":[{"totalLogs":1,"Folders":"JS.Logloud","collectedLogs":0,"unCollectedLogsData":[{"path":"JS.Logloud,JS.Logloud","dataSize":250}]},{"totalLogs":1,"Folders":"AWS ELB","collectedLogs":0,"unCollectedLogsData":[{"path":"AWS ELB,elasticloadbalancing","dataSize":3161841}]},{"totalLogs":9,"Folders":"Demo,Tomcat,TX_EXAMPLE","collectedLogs":0,"unCollectedLogsData":[{"path":"Demo,Tomcat,TX_EXAMPLE,IMPACS_BookingInterface-IMPACS_LoanBooking_ReqRep","dataSize":104619},{"path":"Demo,Tomcat,TX_EXAMPLE,ICV_Customer_Interface--ICV_Customer_Search_Response","dataSize":1482923},{"path":"Demo,Tomcat,TX_EXAMPLE,IMPACS_BookingInterface-IMPACS_LoanBooking_Status","dataSize":70679},{"path":"Demo,Tomcat,TX_EXAMPLE,NAIT_AFS_BookingInterface--AFS_LP_BookingInterface_ResponseMessage","dataSize":450876},{"path":"Demo,Tomcat,TX_EXAMPLE,NAIT_AFS_BookingInterface--LP_AFS_BookingInterface_RequestMessage","dataSize":374061},{"path":"Demo,Tomcat,TX_EXAMPLE,ICV_Customer_Interface--ICV_Get_Customer_Request","dataSize":900789},{"path":"Demo,Tomcat,TX_EXAMPLE,ICV_Customer_Interface--ICV_Get_Customer_Response","dataSize":865204},{"path":"Demo,Tomcat,TX_EXAMPLE,NESS-LPNameRequesttoNESS","dataSize":4298295},{"path":"Demo,Tomcat,TX_EXAMPLE,NESS-NESSNameResponsetoLP","dataSize":6681574}]},{"totalLogs":4,"Folders":"Example Applications,WebSphere 6.1.0.0,AppSrv01,SERVERWINNode01,server1","collectedLogs":0,"unCollectedLogsData":[{"path":"Example Applications,WebSphere 6.1.0.0,AppSrv01,SERVERWINNode01,server1,http_error","dataSize":6201816},{"path":"Example Applications,WebSphere 6.1.0.0,AppSrv01,SERVERWINNode01,server1,http_access","dataSize":1411665},{"path":"Example Applications,WebSphere 6.1.0.0,AppSrv01,SERVERWINNode01,server1,SystemErr","dataSize":178297},{"path":"Example Applications,WebSphere 6.1.0.0,AppSrv01,SERVERWINNode01,server1,SystemOut","dataSize":663867}]},{"totalLogs":2,"Folders":"Demo,MySQL","collectedLogs":0,"unCollectedLogsData":[{"path":"Demo,MySQL,mysqld-instance-1","dataSize":184975},{"path":"Demo,MySQL,mysqld-instance-2","dataSize":8235}]},{"totalLogs":2,"Folders":"Example Applications,WebLogic 10.0,wl_server,examplesServer","collectedLogs":0,"unCollectedLogsData":[{"path":"Example Applications,WebLogic 10.0,wl_server,examplesServer,examplesServer","dataSize":1003895},{"path":"Example Applications,WebLogic 10.0,wl_server,examplesServer,access","dataSize":698}]},{"totalLogs":1,"Folders":"WebApp Logs,LogLooud","collectedLogs":0,"unCollectedLogsData":[{"path":"WebApp Logs,LogLooud,LogLooud","dataSize":1305}]},{"totalLogs":2,"Folders":"Demo,Linux,instance1","collectedLogs":0,"unCollectedLogsData":[{"path":"Demo,Linux,instance1,messages","dataSize":86974743},{"path":"Demo,Linux,instance1,Mail","dataSize":23821324}]}]}}http://localhost:30303/logeye/message/messageJsonApi.jsp?api=collectedDataInfo&type=AppTags&timeFrame=last24Hours&detailsLevel=Detailed&maxNumberOfResults=10&autoLogin=true&username=admin&password=admin
Result JSON:
{"data":{"collectionData":[{"totalLogs":1,"collectedLogs":0,"unCollectedLogsData":[{"path":"Example Applications,Tomcat 5.0.28,localhost_log","dataSize":103891}],"AppTags":"Tomcat 5.0.28"},
{"totalLogs":1,"collectedLogs":0,"unCollectedLogsData":[{"path":"JS.Logloud,JS.Logloud","dataSize":250}],"AppTags":"JS.Logloud"},
{"totalLogs":9,"collectedLogs":0,"unCollectedLogsData":[{"path":"Demo,Tomcat,TX_EXAMPLE,IMPACS_BookingInterface-IMPACS_LoanBooking_ReqRep","dataSize":104619},
{"path":"Demo,Tomcat,TX_EXAMPLE,ICV_Customer_Interface--ICV_Customer_Search_Response","dataSize":1482923},{"path":"Demo,Tomcat,TX_EXAMPLE,IMPACS_BookingInterface-IMPACS_LoanBooking_Status","dataSize":70679},
{"path":"Demo,Tomcat,TX_EXAMPLE,NAIT_AFS_BookingInterface--AFS_LP_BookingInterface_ResponseMessage","dataSize":450876},
{"path":"Demo,Tomcat,TX_EXAMPLE,NAIT_AFS_BookingInterface--LP_AFS_BookingInterface_RequestMessage","dataSize":374061},
{"path":"Demo,Tomcat,TX_EXAMPLE,ICV_Customer_Interface--ICV_Get_Customer_Request","dataSize":900789},{"path":"Demo,Tomcat,TX_EXAMPLE,ICV_Customer_Interface--ICV_Get_Customer_Response","dataSize":865204},
{"path":"Demo,Tomcat,TX_EXAMPLE,NESS-LPNameRequesttoNESS","dataSize":4298295},{"path":"Demo,Tomcat,TX_EXAMPLE,NESS-NESSNameResponsetoLP","dataSize":6681574}],"AppTags":"AppFinTech_LoadLabA"},
{"totalLogs":14,"collectedLogs":5,"unCollectedLogsData":[{"path":"Demo,Linux,instance1,messages","dataSize":86974743},{"path":"Demo,Linux,instance1,Mail","dataSize":23821324},{"path":"ID,OS,log,boot","dataSize":0},
{"path":"ID,OS,log,dracut","dataSize":0},{"path":"ID,OS,log,yum","dataSize":0},{"path":"ID,OS,log,tomcat,catalina log","dataSize":0},{"path":"ID,OS,log,tomcat,catalina out","dataSize":0},
{"path":"ID,OS,log,tomcat,localhost","dataSize":0},{"path":"ID,OS,log,tomcat,localhost_access_log","dataSize":0}],"AppTags":"Linux"},
{"totalLogs":1,"collectedLogs":0,"unCollectedLogsData":[{"path":"
...
CloudXPLG,log,apt,history.log","dataSize":0}],"AppTags":"DASTLab"},
{"totalLogs":3,"collectedLogs":0,"unCollectedLogsData":[{"path":"Example Applications,WebLogic 10.0,wl_server,examplesServer,examplesServer","dataSize":1003895},
{"path":"Example Applications,WebLogic 10.0,wl_server,examplesServer,access","dataSize":698},{"path":"Example Applications,WebLogic 10.0,xplg,xplg","dataSize":8033}],"AppTags":"Weblogic 10.0"},
{"totalLogs":1,"collectedLogs":0,"unCollectedLogsData":[{"path":"
...
CloudXPLG,log,apt,history.log","dataSize":0}],"AppTags":"VOLoadTesting"},
{"totalLogs":9,"collectedLogs":0,"unCollectedLogsData":[{"path":"Example Applications,WebSphere 6.1.0.0,AppSrv01,SERVERWINNode01,server1,http_error","dataSize":6201816},
{"path":"Example Applications,WebSphere 6.1.0.0,AppSrv01,SERVERWINNode01,server1,http_access","dataSize":1411665},{"path":"Example Applications,WebSphere 6.1.0.0,AppSrv01,SERVERWINNode01,server1,SystemErr","dataSize":178297},
{"path":"Example Applications,WebSphere 6.1.0.0,AppSrv01,SERVERWINNode01,server1,SystemOut","dataSize":663867},{"path":"Example Applications,WebSphere 6.1.0.0,WebSphere Merge Log Example","dataSize":0},
{"path":"Example Applications,WebSphere 6.1.0.0,AppSrv02,SERVERWINNode02,server1,http_error","dataSize":3100908},
{"path":"Example Applications,WebSphere 6.1.0.0,AppSrv02,SERVERWINNode02,server1,http_access","dataSize":1411665},
{"path":"Example Applications,WebSphere 6.1.0.0,AppSrv02,SERVERWINNode02,server1,SystemErr","dataSize":89095},
{"path":"Example Applications,WebSphere 6.1.0.0,AppSrv02,SERVERWINNode02,server1,SystemOut","dataSize":67255}],"AppTags":"WebSphere 6.1"},
{"totalLogs":12,"collectedLogs":5,"unCollectedLogsData":[{"path":"ID,OS,log,boot","dataSize":0},{"path":"ID,OS,log,dracut","dataSize":0},{"path":"ID,OS,log,yum","dataSize":0},
{"path":"ID,OS,log,tomcat,catalina log","dataSize":0},{"path":"ID,OS,log,tomcat,catalina out","dataSize":0},{"path":"ID,OS,log,tomcat,localhost","dataSize":0},
{"path":"ID,OS,log,tomcat,localhost_access_log","dataSize":0}],"AppTags":"ID"}]}}
maxNumberOfResults = number, max number of results to return. Relevant only when ‘Detailed’ type is specified (default = 100)
Anchor | ||||
---|---|---|---|---|
|
...
URL that returns Folders and Logs information
http://[MACHINE_NAME]:[
...
XPLG_PORT]/logeye/restapi/folders-and-logs-configuration?sourceQuery=[
...
see item 2]
sourceQuery = the source query that represent on which part of
...
XPLG data structure to run (Folder(s), appTag(s). For example: apptag.APPTAG_NAME, folder.FOLDER_NAME
Result example:
API call: http://[MACHINE_NAME]:[
...
XPLG_PORT]/logeye/restapi/folders-and-logs-configuration?sourceQuery=apptag.TEST&autoLogin=true&username=admin&password=admin
Code Block |
---|
Result: {"success":true,"errorMessage":null,"response":{"selected":false,"id":"Module-rootModule","name":"Folders and Logs","description":"","type":"Module","key":null,"hasChildrens":true,"children":[{"selected":false,"id":"Module-1227520005721","name":"Example Logs","description":"","type":"Module","key":null,"hasChildrens":true,"children":[{"selected":false,"id":"Log-Log4J_Log_1227520538204","name":"Log4J Log","description":"","type":"Log","key":null,"hasChildrens":false,"children":[]},{"selected":false,"id":"Log-IIS_Log_1227520737065","name":"IIS Log","description":"","type":"Log","key":null,"hasChildrens":false,"children":[]},{"selected":false,"id":"Log-Syslog_Log_1227521086597","name":"Syslog Log","description":"","type":"Log","key":null,"hasChildrens":false,"children":[]},{"selected":false,"id":"Module-1509627171374","name":"ssh","description":"","type":"Module","key":null,"hasChildrens":true,"children":[{"selected":false,"id":"Log-ssh_1509627248381","name":"ssh","description":"","type":"Log","key":null,"hasChildrens":false,"children":[]},{"selected":false,"id":"Module-1509611724539","name":"New Example Logs","description":"","type":"Module","key":null,"hasChildrens":true,"children":[{"selected":false,"id":"Log- |
...
XPLGlog_1509628193290","name":" |
...
XPLGlog","description":"","type":"Log","key":null,"hasChildrens":false,"children":[]}]}]}]}]},"httpStatusCode":0} |
Name = the name of the object in the Folders and Logs tree
id = the id in
...
XPLG of object in the Folders and Logs tree
description = the description of the object in the Folders and Logs tree
type = the type (log/folder) of the object in the Folders and Logs tree
* For each Folder - if there are subfolders / logs then they will be listed indicated by hasChildrens = true and children JSON object with the details.
Anchor | ||||
---|---|---|---|---|
|
...
URL that returns a specific log's information
http://[MACHINE_NAME]:[
...
XPLG_PORT]/logeye/restapi/log-configuration?logPath=[
...
see item 2]&logName=[see item 3]
logPath = the Folders path in
...
XPLG to the log separated by '->', without the log name, case sensitive. For example: ROOT->FOLDER_1->FOLDER_2
logName = the log name, case sensitive.
...
Result example:
API call: http://[MACHINE_NAME]:[
...
XPLG_PORT]/logeye/restapi/log-configuration?logPath=ROOT-%3EExample%20Logs&logName=IIS%20Log&autoLogin=true&username=admin&password=admin
Code Block |
---|
Result: {"success":true,"errorMessage":null,"response":{"type":"Log","id":"Log-IIS_Log_1227520737065","name":"IIS Log","description":"","path":null,"appTags":null,"collectionPolicy":"defaultLogCollectionPolicy","patterns":"{date:Date,locale=en,dd-MM-yyyy HH:mm:ss.SSS} {text:c-ip} {text:cs-username} {text:s-sitename} {text:s-computername} {ip:s-ip} {text:s-port} {text:cs-method} {text:cs-uristem} {text:cs-uri-query} {number:sc-status} {text:sc-win32-status} {text:sc-bytes} {text:time-taken} {text:cs-version} {text:cs-host} {text:cs(User-Agent)} {text:cs(Cookie)} {text:cs(Referer)}","filePaths":["IIS.log"],"accountName":null,"charSet":null,"timeZone":"Israel Standard Time","dataFilterQuery":null},"httpStatusCode":0} |
type = the type of log
id = the id of the log in
...
XPLG
name = the name of the log in
...
XPLG
description = the
...
description of the log in
...
XPLG
path = the Folders and Logs
...
path of the log in
...
XPLG
appTags = the appTags that the log is tagged to (if applicable)
collectionPolicy = the name of the collection policy that the log is part of
patterns = the data patterns applied on the log
filesPath = the absolute path to the files that the log is defined on,
...
separated by @#@# if there are multiple locations configured (if applicable)
accountName = the name of the account that the log is
...
using (if applicable)
charSet = the char-set applied on the log
timeZone = the time zone applied on the log
dataFilterQuery = the data filter query applied on the log (if applicable)
Anchor | ||||
---|---|---|---|---|
|
...
URL that returns multiple log's information
Returns the complete details of the logs based on the source query as listed below.
http://[MACHINE_NAME]:[
...
XPLG_PORT]/logeye/restapi/logs-configuration?sourceQuery=[
...
see item 2]
sourceQuery = the source query that represent on which part of
...
XPLG data structure to run (Folder(s), appTag(s). For example: apptag.APPTAG_NAME, folder.FOLDER_NAME
Result example:
API call: http://[MACHINE_NAME]:[
...
XPLG_PORT]/logeye/restapi/logs-configuration?sourceQuery=folder.Example%20Logs&autoLogin=true&username=admin&password=admin
Code Block |
---|
type | id | name | description | path | appTags | collection policy | patterns | files paths | account name | char set | time zone | data Filter Query
Log | Log-Acute_Dispatch_1525684585842 | Acute Dispatch | | ROOT->Logs Information->Acute Dispatch | LogsInformation | Default Collection Policy | {text:type} | {text:id} | {text:name} | {text:description} | {text:path} | {text:appTags} | {text:collection policy} | {text:patterns} | {text:files paths} | {text:account name} | {text:char set} | {text:time zone |
...
} | {text:data Filter Query} | C:\Users\omry.XPLG\Desktop\FMC\LexLogsInformation\Acute Dispatch.txt | null | |
...
null | Asia/Jerusalem | null |
type = the type of returned object
id = the id of the log in XPLG
name = the name of the log in XPLG
description = the description of the log in XPLG
path = the Folders and Logs path of the log in XPLG
appTags = the appTags that the log is tagged to (if applicable)
collectionPolicy = the name of the collection policy that the log is part of
patterns = the data patterns applied on the log
filesPath = the absolute path to the files that the log is defined on, separated by @#@# if there are multiple locations configured (if applicable)
accountName = the name of the account that the log is using (if applicable)
charSet = the char-set applied on the log
timeZone = the time zone applied on the log
dataFilterQuery = the data filter query applied on the log (if applicable)
You can parse this data in XPLG using the following pattern:
Code Block |
---|
{text:type} | {text:id} | {text:name} | {text:description} | {text:path} | {text:appTags} | {text:collection policy} | {string:patterns} | {string:files paths} | {text:account name} | {text:char set} | {text:time zone} | {text:data Filter Query} |