Created 03-02-2016 03:10 PM
Hello everyone,
I am trying to get a list of alerts via REST API but I want it to be limited to only specific fields.
I am currently able to get all available information from the alerts, ie:
{
"href" : "http://ambari_server:8080/api/v1/clusters/appslogs/alerts?Alert/state.in(WARNING,CRITICAL,UNKNOWN)&Alert/maintenance_state=OFF&fields=*",
"items" : [
{
"href" : "http://ambari_server:8080/api/v1/clusters/appslogs/alerts/23",
"Alert" : {
"cluster_name" : "appslogs",
"component_name" : "AMBARI_AGENT",
"definition_id" : 50,
"definition_name" : "ambari_agent_disk_usage",
"host_name" : "host1.local",
"id" : 23,
"instance" : null,
"label" : "Host Disk Usage",
"latest_timestamp" : 1456931060177,
"maintenance_state" : "OFF",
"original_timestamp" : 1454589680156,
"scope" : "HOST",
"service_name" : "AMBARI",
"state" : "WARNING",
"text" : "Capacity Used: [71.56%, 6.0 GB], Capacity Total: [8.3 GB], path=/usr/hdp. Total free space is less than 2.0 GB"
}Does anybody know how to get ONLY state,host and text fields in response?
I tried the following request but it does not work:
http://ambari_server:8080/api/v1/clusters/appslogs/alerts?Alert/state.in(WARNING,CRITICAL,UNKNOWN)&A...
What am I missing?
Apache Ambari Version: 2.2.0.0
Created 03-03-2016 01:01 AM
@Sunella Zag It looks like alerts resource doesn't allow filtering of fields. Only fields=* seems to be working. Specifying any fields results in default fields.
http://ambari_server:8080/api/v1/clusters/appslogs/alerts?Alert/state.in(WARNING,CRITICAL,UNKNOWN)&A...
For services resource, I was able to specify a list of fields and get only required fields in my response.
http://ambari_server:8080/api/v1/clusters/hdp_dev/services/HDFS?fields=alerts_summary
so this seems to be a problem only with alert resource.
Created 03-03-2016 01:01 AM
@Sunella Zag It looks like alerts resource doesn't allow filtering of fields. Only fields=* seems to be working. Specifying any fields results in default fields.
http://ambari_server:8080/api/v1/clusters/appslogs/alerts?Alert/state.in(WARNING,CRITICAL,UNKNOWN)&A...
For services resource, I was able to specify a list of fields and get only required fields in my response.
http://ambari_server:8080/api/v1/clusters/hdp_dev/services/HDFS?fields=alerts_summary
so this seems to be a problem only with alert resource.
Created 03-03-2016 06:05 PM
@Sunella Zag Following fields are defaults and will be included in all responses
"cluster_name" , "definition_id", "definition_name" , "host_name" , "id" , "service_name"
You can include any additional fields using
http://ambari_server:8080/api/v1/clusters/appslogs/alerts?Alert/state.in(WARNING,CRITICAL,UNKNOWN)&A...lert/state,Alert/text