Create a RUM retention filter

POST https://api.ap1.datadoghq.com/api/v2/rum/applications/{app_id}/retention_filtershttps://api.ap2.datadoghq.com/api/v2/rum/applications/{app_id}/retention_filtershttps://api.datadoghq.eu/api/v2/rum/applications/{app_id}/retention_filtershttps://api.ddog-gov.com/api/v2/rum/applications/{app_id}/retention_filtershttps://api.us2.ddog-gov.com/api/v2/rum/applications/{app_id}/retention_filtershttps://api.uk1.datadoghq.com/api/v2/rum/applications/{app_id}/retention_filtershttps://api.datadoghq.com/api/v2/rum/applications/{app_id}/retention_filtershttps://api.us3.datadoghq.com/api/v2/rum/applications/{app_id}/retention_filtershttps://api.us5.datadoghq.com/api/v2/rum/applications/{app_id}/retention_filters

Información general

Crea un filtro de retención RUM para una solicitud RUM. Devuelve objetos de filtro de retención RUM del cuerpo de la solicitud cuando la solicitud tiene éxito.

Argumentos

Parámetros de ruta

Nombre

Tipo

Descripción

app_id [required]

string

RUM application ID.

Solicitud

Body Data (required)

La definición del nuevo filtro de retención RUM.

Expand All

Campo

Tipo

Descripción

data [required]

object

The new RUM retention filter properties to create.

attributes [required]

object

The object describing attributes of a RUM retention filter to create.

cross_product_sampling

object

The configuration for cross-product retention filters.

trace_enabled

boolean

Whether the cross-product retention filter for APM traces is enabled.

trace_sample_rate [required]

double

The sample rate for the APM cross-product retention filter, between 0 and 100.

enabled

boolean

Whether the retention filter is enabled.

event_type [required]

enum

The type of RUM events to filter on. Allowed enum values: session,view,action,error,resource,long_task,vital

name [required]

string

The name of a RUM retention filter.

query

string

The query string for a RUM retention filter.

sample_rate [required]

double

The sample rate for a RUM retention filter, between 0.1 and 100.

type [required]

enum

The type of the resource. The value should always be retention_filters. Allowed enum values: retention_filters

default: retention_filters

{
  "data": {
    "type": "retention_filters",
    "attributes": {
      "name": "Test creating retention filter",
      "event_type": "session",
      "query": "custom_query",
      "sample_rate": 50,
      "enabled": true
    }
  }
}

Respuesta

Created

The RUM retention filter object.

Expand All

Campo

Tipo

Descripción

data

object

The RUM retention filter.

attributes

object

The object describing attributes of a RUM retention filter.

cross_product_sampling

object

The configuration for cross-product retention filters.

trace_enabled

boolean

Whether the cross-product retention filter for APM traces is enabled.

trace_sample_rate

double

The sample rate for the APM cross-product retention filter, between 0 and 100.

enabled

boolean

Whether the retention filter is enabled.

event_type

enum

The type of RUM events to filter on. Allowed enum values: session,view,action,error,resource,long_task,vital

name

string

The name of a RUM retention filter.

query

string

The query string for a RUM retention filter.

sample_rate

double

The sample rate for a RUM retention filter, between 0.1 and 100.

id

string

ID of retention filter in UUID.

type

enum

The type of the resource. The value should always be retention_filters. Allowed enum values: retention_filters

default: retention_filters

{
  "data": {
    "attributes": {
      "cross_product_sampling": {
        "trace_enabled": true,
        "trace_sample_rate": 25
      },
      "enabled": true,
      "event_type": "session",
      "name": "Retention filter for session",
      "query": "@session.has_replay:true",
      "sample_rate": 50.5
    },
    "id": "051601eb-54a0-abc0-03f9-cc02efa18892",
    "type": "retention_filters"
  }
}

Bad Request

API error response.

Expand All

Campo

Tipo

Descripción

errors [required]

[string]

A list of errors.

{
  "errors": [
    "Bad Request"
  ]
}

Not Authorized

API error response.

Expand All

Campo

Tipo

Descripción

errors [required]

[string]

A list of errors.

{
  "errors": [
    "Bad Request"
  ]
}

Too many requests

API error response.

Expand All

Campo

Tipo

Descripción

errors [required]

[string]

A list of errors.

{
  "errors": [
    "Bad Request"
  ]
}

Ejemplo de código

                          ## default
# 

# Path parameters
export app_id="CHANGE_ME"
# Curl command
curl -X POST "https://api.ap1.datadoghq.com"https://api.ap2.datadoghq.com"https://api.datadoghq.eu"https://api.ddog-gov.com"https://api.us2.ddog-gov.com"https://api.uk1.datadoghq.com"https://api.datadoghq.com"https://api.us3.datadoghq.com"https://api.us5.datadoghq.com/api/v2/rum/applications/${app_id}/retention_filters" \ -H "Accept: application/json" \ -H "Content-Type: application/json" \ -H "DD-API-KEY: ${DD_API_KEY}" \ -H "DD-APPLICATION-KEY: ${DD_APP_KEY}" \ -d @- << EOF { "data": { "attributes": { "cross_product_sampling": { "trace_enabled": true, "trace_sample_rate": 25 }, "enabled": true, "event_type": "session", "name": "Retention filter for session", "query": "@session.has_replay:true", "sample_rate": 50.5 }, "type": "retention_filters" } } EOF
// Create a RUM retention filter returns "Created" response

package main

import (
	"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"
)

func main() {
	body := datadogV2.RumRetentionFilterCreateRequest{
		Data: datadogV2.RumRetentionFilterCreateData{
			Type: datadogV2.RUMRETENTIONFILTERTYPE_RETENTION_FILTERS,
			Attributes: datadogV2.RumRetentionFilterCreateAttributes{
				Name:       "Test creating retention filter",
				EventType:  datadogV2.RUMRETENTIONFILTEREVENTTYPE_SESSION,
				Query:      datadog.PtrString("custom_query"),
				SampleRate: 50,
				Enabled:    datadog.PtrBool(true),
			},
		},
	}
	ctx := datadog.NewDefaultContext(context.Background())
	configuration := datadog.NewConfiguration()
	apiClient := datadog.NewAPIClient(configuration)
	api := datadogV2.NewRumRetentionFiltersApi(apiClient)
	resp, r, err := api.CreateRetentionFilter(ctx, "a33671aa-24fd-4dcd-ba4b-5bbdbafe7690", body)

	if err != nil {
		fmt.Fprintf(os.Stderr, "Error when calling `RumRetentionFiltersApi.CreateRetentionFilter`: %v\n", err)
		fmt.Fprintf(os.Stderr, "Full HTTP response: %v\n", r)
	}

	responseContent, _ := json.MarshalIndent(resp, "", "  ")
	fmt.Fprintf(os.Stdout, "Response from `RumRetentionFiltersApi.CreateRetentionFilter`:\n%s\n", responseContent)
}

Instructions

First install the library and its dependencies and then save the example to main.go and run following commands:

    
DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comap2.datadoghq.comuk1.datadoghq.comddog-gov.comus2.ddog-gov.com" DD_API_KEY="<API-KEY>" DD_APP_KEY="<APP-KEY>" go run "main.go"
// Create a RUM retention filter returns "Created" response

import com.datadog.api.client.ApiClient;
import com.datadog.api.client.ApiException;
import com.datadog.api.client.v2.api.RumRetentionFiltersApi;
import com.datadog.api.client.v2.model.RumRetentionFilterCreateAttributes;
import com.datadog.api.client.v2.model.RumRetentionFilterCreateData;
import com.datadog.api.client.v2.model.RumRetentionFilterCreateRequest;
import com.datadog.api.client.v2.model.RumRetentionFilterEventType;
import com.datadog.api.client.v2.model.RumRetentionFilterResponse;
import com.datadog.api.client.v2.model.RumRetentionFilterType;

public class Example {
  public static void main(String[] args) {
    ApiClient defaultClient = ApiClient.getDefaultApiClient();
    RumRetentionFiltersApi apiInstance = new RumRetentionFiltersApi(defaultClient);

    RumRetentionFilterCreateRequest body =
        new RumRetentionFilterCreateRequest()
            .data(
                new RumRetentionFilterCreateData()
                    .type(RumRetentionFilterType.RETENTION_FILTERS)
                    .attributes(
                        new RumRetentionFilterCreateAttributes()
                            .name("Test creating retention filter")
                            .eventType(RumRetentionFilterEventType.SESSION)
                            .query("custom_query")
                            .sampleRate(50.0)
                            .enabled(true)));

    try {
      RumRetentionFilterResponse result =
          apiInstance.createRetentionFilter("a33671aa-24fd-4dcd-ba4b-5bbdbafe7690", body);
      System.out.println(result);
    } catch (ApiException e) {
      System.err.println("Exception when calling RumRetentionFiltersApi#createRetentionFilter");
      System.err.println("Status code: " + e.getCode());
      System.err.println("Reason: " + e.getResponseBody());
      System.err.println("Response headers: " + e.getResponseHeaders());
      e.printStackTrace();
    }
  }
}

Instructions

First install the library and its dependencies and then save the example to Example.java and run following commands:

    
DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comap2.datadoghq.comuk1.datadoghq.comddog-gov.comus2.ddog-gov.com" DD_API_KEY="<API-KEY>" DD_APP_KEY="<APP-KEY>" java "Example.java"
"""
Create a RUM retention filter returns "Created" response
"""

from datadog_api_client import ApiClient, Configuration
from datadog_api_client.v2.api.rum_retention_filters_api import RumRetentionFiltersApi
from datadog_api_client.v2.model.rum_retention_filter_create_attributes import RumRetentionFilterCreateAttributes
from datadog_api_client.v2.model.rum_retention_filter_create_data import RumRetentionFilterCreateData
from datadog_api_client.v2.model.rum_retention_filter_create_request import RumRetentionFilterCreateRequest
from datadog_api_client.v2.model.rum_retention_filter_event_type import RumRetentionFilterEventType
from datadog_api_client.v2.model.rum_retention_filter_type import RumRetentionFilterType

body = RumRetentionFilterCreateRequest(
    data=RumRetentionFilterCreateData(
        type=RumRetentionFilterType.RETENTION_FILTERS,
        attributes=RumRetentionFilterCreateAttributes(
            name="Test creating retention filter",
            event_type=RumRetentionFilterEventType.SESSION,
            query="custom_query",
            sample_rate=50.0,
            enabled=True,
        ),
    ),
)

configuration = Configuration()
with ApiClient(configuration) as api_client:
    api_instance = RumRetentionFiltersApi(api_client)
    response = api_instance.create_retention_filter(app_id="a33671aa-24fd-4dcd-ba4b-5bbdbafe7690", body=body)

    print(response)

Instructions

First install the library and its dependencies and then save the example to example.py and run following commands:

    
DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comap2.datadoghq.comuk1.datadoghq.comddog-gov.comus2.ddog-gov.com" DD_API_KEY="<API-KEY>" DD_APP_KEY="<APP-KEY>" python3 "example.py"
# Create a RUM retention filter returns "Created" response

require "datadog_api_client"
api_instance = DatadogAPIClient::V2::RumRetentionFiltersAPI.new

body = DatadogAPIClient::V2::RumRetentionFilterCreateRequest.new({
  data: DatadogAPIClient::V2::RumRetentionFilterCreateData.new({
    type: DatadogAPIClient::V2::RumRetentionFilterType::RETENTION_FILTERS,
    attributes: DatadogAPIClient::V2::RumRetentionFilterCreateAttributes.new({
      name: "Test creating retention filter",
      event_type: DatadogAPIClient::V2::RumRetentionFilterEventType::SESSION,
      query: "custom_query",
      sample_rate: 50,
      enabled: true,
    }),
  }),
})
p api_instance.create_retention_filter("a33671aa-24fd-4dcd-ba4b-5bbdbafe7690", body)

Instructions

First install the library and its dependencies and then save the example to example.rb and run following commands:

    
DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comap2.datadoghq.comuk1.datadoghq.comddog-gov.comus2.ddog-gov.com" DD_API_KEY="<API-KEY>" DD_APP_KEY="<APP-KEY>" rb "example.rb"
// Create a RUM retention filter returns "Created" response
use datadog_api_client::datadog;
use datadog_api_client::datadogV2::api_rum_retention_filters::RumRetentionFiltersAPI;
use datadog_api_client::datadogV2::model::RumRetentionFilterCreateAttributes;
use datadog_api_client::datadogV2::model::RumRetentionFilterCreateData;
use datadog_api_client::datadogV2::model::RumRetentionFilterCreateRequest;
use datadog_api_client::datadogV2::model::RumRetentionFilterEventType;
use datadog_api_client::datadogV2::model::RumRetentionFilterType;

#[tokio::main]
async fn main() {
    let body = RumRetentionFilterCreateRequest::new(RumRetentionFilterCreateData::new(
        RumRetentionFilterCreateAttributes::new(
            RumRetentionFilterEventType::SESSION,
            "Test creating retention filter".to_string(),
            50.0,
        )
        .enabled(true)
        .query("custom_query".to_string()),
        RumRetentionFilterType::RETENTION_FILTERS,
    ));
    let configuration = datadog::Configuration::new();
    let api = RumRetentionFiltersAPI::with_config(configuration);
    let resp = api
        .create_retention_filter("a33671aa-24fd-4dcd-ba4b-5bbdbafe7690".to_string(), body)
        .await;
    if let Ok(value) = resp {
        println!("{:#?}", value);
    } else {
        println!("{:#?}", resp.unwrap_err());
    }
}

Instructions

First install the library and its dependencies and then save the example to src/main.rs and run following commands:

    
DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comap2.datadoghq.comuk1.datadoghq.comddog-gov.comus2.ddog-gov.com" DD_API_KEY="<API-KEY>" DD_APP_KEY="<APP-KEY>" cargo run
/**
 * Create a RUM retention filter returns "Created" response
 */

import { client, v2 } from "@datadog/datadog-api-client";

const configuration = client.createConfiguration();
const apiInstance = new v2.RumRetentionFiltersApi(configuration);

const params: v2.RumRetentionFiltersApiCreateRetentionFilterRequest = {
  body: {
    data: {
      type: "retention_filters",
      attributes: {
        name: "Test creating retention filter",
        eventType: "session",
        query: "custom_query",
        sampleRate: 50,
        enabled: true,
      },
    },
  },
  appId: "a33671aa-24fd-4dcd-ba4b-5bbdbafe7690",
};

apiInstance
  .createRetentionFilter(params)
  .then((data: v2.RumRetentionFilterResponse) => {
    console.log(
      "API called successfully. Returned data: " + JSON.stringify(data)
    );
  })
  .catch((error: any) => console.error(error));

Instructions

First install the library and its dependencies and then save the example to example.ts and run following commands:

    
DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comap2.datadoghq.comuk1.datadoghq.comddog-gov.comus2.ddog-gov.com" DD_API_KEY="<API-KEY>" DD_APP_KEY="<APP-KEY>" tsc "example.ts"