Update a specific span-based metric from your organization.
Returns the span-based metric object from the request body when the request is successful.
This endpoint requires the apm_generate_metrics permission.
// Update a span-based metric returns "OK" responsepackagemainimport("context""encoding/json""fmt""os""github.com/DataDog/datadog-api-client-go/v2/api/datadog""github.com/DataDog/datadog-api-client-go/v2/api/datadogV2")funcmain(){// there is a valid "spans_metric" in the systemSpansMetricDataID:=os.Getenv("SPANS_METRIC_DATA_ID")body:=datadogV2.SpansMetricUpdateRequest{Data:datadogV2.SpansMetricUpdateData{Attributes:datadogV2.SpansMetricUpdateAttributes{Compute:&datadogV2.SpansMetricUpdateCompute{IncludePercentiles:datadog.PtrBool(false),},Filter:&datadogV2.SpansMetricFilter{Query:datadog.PtrString("@http.status_code:200 service:my-service-updated"),},GroupBy:[]datadogV2.SpansMetricGroupBy{{Path:"resource_name",TagName:datadog.PtrString("resource_name"),},},},Type:datadogV2.SPANSMETRICTYPE_SPANS_METRICS,},}ctx:=datadog.NewDefaultContext(context.Background())configuration:=datadog.NewConfiguration()apiClient:=datadog.NewAPIClient(configuration)api:=datadogV2.NewSpansMetricsApi(apiClient)resp,r,err:=api.UpdateSpansMetric(ctx,SpansMetricDataID,body)iferr!=nil{fmt.Fprintf(os.Stderr,"Error when calling `SpansMetricsApi.UpdateSpansMetric`: %v\n",err)fmt.Fprintf(os.Stderr,"Full HTTP response: %v\n",r)}responseContent,_:=json.MarshalIndent(resp,""," ")fmt.Fprintf(os.Stdout,"Response from `SpansMetricsApi.UpdateSpansMetric`:\n%s\n",responseContent)}
// Update a span-based metric returns "OK" responseimportcom.datadog.api.client.ApiClient;importcom.datadog.api.client.ApiException;importcom.datadog.api.client.v2.api.SpansMetricsApi;importcom.datadog.api.client.v2.model.SpansMetricFilter;importcom.datadog.api.client.v2.model.SpansMetricGroupBy;importcom.datadog.api.client.v2.model.SpansMetricResponse;importcom.datadog.api.client.v2.model.SpansMetricType;importcom.datadog.api.client.v2.model.SpansMetricUpdateAttributes;importcom.datadog.api.client.v2.model.SpansMetricUpdateCompute;importcom.datadog.api.client.v2.model.SpansMetricUpdateData;importcom.datadog.api.client.v2.model.SpansMetricUpdateRequest;importjava.util.Collections;publicclassExample{publicstaticvoidmain(String[]args){ApiClientdefaultClient=ApiClient.getDefaultApiClient();SpansMetricsApiapiInstance=newSpansMetricsApi(defaultClient);// there is a valid "spans_metric" in the systemStringSPANS_METRIC_DATA_ATTRIBUTES_FILTER_QUERY=System.getenv("SPANS_METRIC_DATA_ATTRIBUTES_FILTER_QUERY");StringSPANS_METRIC_DATA_ID=System.getenv("SPANS_METRIC_DATA_ID");SpansMetricUpdateRequestbody=newSpansMetricUpdateRequest().data(newSpansMetricUpdateData().attributes(newSpansMetricUpdateAttributes().compute(newSpansMetricUpdateCompute().includePercentiles(false)).filter(newSpansMetricFilter().query("@http.status_code:200 service:my-service-updated")).groupBy(Collections.singletonList(newSpansMetricGroupBy().path("resource_name").tagName("resource_name")))).type(SpansMetricType.SPANS_METRICS));try{SpansMetricResponseresult=apiInstance.updateSpansMetric(SPANS_METRIC_DATA_ID,body);System.out.println(result);}catch(ApiExceptione){System.err.println("Exception when calling SpansMetricsApi#updateSpansMetric");System.err.println("Status code: "+e.getCode());System.err.println("Reason: "+e.getResponseBody());System.err.println("Response headers: "+e.getResponseHeaders());e.printStackTrace();}}}
"""
Update a span-based metric returns "OK" response
"""fromosimportenvironfromdatadog_api_clientimportApiClient,Configurationfromdatadog_api_client.v2.api.spans_metrics_apiimportSpansMetricsApifromdatadog_api_client.v2.model.spans_metric_filterimportSpansMetricFilterfromdatadog_api_client.v2.model.spans_metric_group_byimportSpansMetricGroupByfromdatadog_api_client.v2.model.spans_metric_typeimportSpansMetricTypefromdatadog_api_client.v2.model.spans_metric_update_attributesimportSpansMetricUpdateAttributesfromdatadog_api_client.v2.model.spans_metric_update_computeimportSpansMetricUpdateComputefromdatadog_api_client.v2.model.spans_metric_update_dataimportSpansMetricUpdateDatafromdatadog_api_client.v2.model.spans_metric_update_requestimportSpansMetricUpdateRequest# there is a valid "spans_metric" in the systemSPANS_METRIC_DATA_ATTRIBUTES_FILTER_QUERY=environ["SPANS_METRIC_DATA_ATTRIBUTES_FILTER_QUERY"]SPANS_METRIC_DATA_ID=environ["SPANS_METRIC_DATA_ID"]body=SpansMetricUpdateRequest(data=SpansMetricUpdateData(attributes=SpansMetricUpdateAttributes(compute=SpansMetricUpdateCompute(include_percentiles=False,),filter=SpansMetricFilter(query="@http.status_code:200 service:my-service-updated",),group_by=[SpansMetricGroupBy(path="resource_name",tag_name="resource_name",),],),type=SpansMetricType.SPANS_METRICS,),)configuration=Configuration()withApiClient(configuration)asapi_client:api_instance=SpansMetricsApi(api_client)response=api_instance.update_spans_metric(metric_id=SPANS_METRIC_DATA_ID,body=body)print(response)
# Update a span-based metric returns "OK" responserequire"datadog_api_client"api_instance=DatadogAPIClient::V2::SpansMetricsAPI.new# there is a valid "spans_metric" in the systemSPANS_METRIC_DATA_ATTRIBUTES_FILTER_QUERY=ENV["SPANS_METRIC_DATA_ATTRIBUTES_FILTER_QUERY"]SPANS_METRIC_DATA_ID=ENV["SPANS_METRIC_DATA_ID"]body=DatadogAPIClient::V2::SpansMetricUpdateRequest.new({data:DatadogAPIClient::V2::SpansMetricUpdateData.new({attributes:DatadogAPIClient::V2::SpansMetricUpdateAttributes.new({compute:DatadogAPIClient::V2::SpansMetricUpdateCompute.new({include_percentiles:false,}),filter:DatadogAPIClient::V2::SpansMetricFilter.new({query:"@http.status_code:200 service:my-service-updated",}),group_by:[DatadogAPIClient::V2::SpansMetricGroupBy.new({path:"resource_name",tag_name:"resource_name",}),],}),type:DatadogAPIClient::V2::SpansMetricType::SPANS_METRICS,}),})papi_instance.update_spans_metric(SPANS_METRIC_DATA_ID,body)
// Update a span-based metric returns "OK" response
usedatadog_api_client::datadog;usedatadog_api_client::datadogV2::api_spans_metrics::SpansMetricsAPI;usedatadog_api_client::datadogV2::model::SpansMetricFilter;usedatadog_api_client::datadogV2::model::SpansMetricGroupBy;usedatadog_api_client::datadogV2::model::SpansMetricType;usedatadog_api_client::datadogV2::model::SpansMetricUpdateAttributes;usedatadog_api_client::datadogV2::model::SpansMetricUpdateCompute;usedatadog_api_client::datadogV2::model::SpansMetricUpdateData;usedatadog_api_client::datadogV2::model::SpansMetricUpdateRequest;#[tokio::main]asyncfnmain(){// there is a valid "spans_metric" in the system
letspans_metric_data_id=std::env::var("SPANS_METRIC_DATA_ID").unwrap();letbody=SpansMetricUpdateRequest::new(SpansMetricUpdateData::new(SpansMetricUpdateAttributes::new().compute(SpansMetricUpdateCompute::new().include_percentiles(false)).filter(SpansMetricFilter::new().query("@http.status_code:200 service:my-service-updated".to_string()),).group_by(vec![SpansMetricGroupBy::new("resource_name".to_string()).tag_name("resource_name".to_string())]),SpansMetricType::SPANS_METRICS,));letconfiguration=datadog::Configuration::new();letapi=SpansMetricsAPI::with_config(configuration);letresp=api.update_spans_metric(spans_metric_data_id.clone(),body).await;ifletOk(value)=resp{println!("{:#?}",value);}else{println!("{:#?}",resp.unwrap_err());}}
DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comap2.datadoghq.comddog-gov.comus2.ddog-gov.com"DD_API_KEY="<API-KEY>"DD_APP_KEY="<APP-KEY>"cargo run
/**
* Update a span-based metric returns "OK" response
*/import{client,v2}from"@datadog/datadog-api-client";constconfiguration=client.createConfiguration();constapiInstance=newv2.SpansMetricsApi(configuration);// there is a valid "spans_metric" in the system
constSPANS_METRIC_DATA_ID=process.env.SPANS_METRIC_DATA_IDasstring;constparams: v2.SpansMetricsApiUpdateSpansMetricRequest={body:{data:{attributes:{compute:{includePercentiles: false,},filter:{query:"@http.status_code:200 service:my-service-updated",},groupBy:[{path:"resource_name",tagName:"resource_name",},],},type:"spans_metrics",},},metricId: SPANS_METRIC_DATA_ID,};apiInstance.updateSpansMetric(params).then((data: v2.SpansMetricResponse)=>{console.log("API called successfully. Returned data: "+JSON.stringify(data));}).catch((error: any)=>console.error(error));