Create a rum-based metric
https://api.datadoghq.com/api/v2/rum/config/metricshttps://api.us3.datadoghq.com/api/v2/rum/config/metricshttps://api.us5.datadoghq.com/api/v2/rum/config/metricshttps://api.datadoghq.eu/api/v2/rum/config/metricshttps://api.ap1.datadoghq.com/api/v2/rum/config/metricshttps://api.ap2.datadoghq.com/api/v2/rum/config/metricshttps://api.uk1.datadoghq.com/api/v2/rum/config/metricshttps://api.ddog-gov.com/api/v2/rum/config/metricshttps://api.us2.ddog-gov.com/api/v2/rum/config/metrics概要
組織の RUM データに基づいてメトリクスを作成します。 リクエストが成功した場合、リクエストボディから RUM ベースメトリクスオブジェクトを返します。
リクエスト
Body Data (required)
新しい RUM ベースメトリクスの定義。
data [required]新しい RUM ベースメトリクスのボディ。
attributes [required]The object describing the Datadog RUM-based metric to create.
compute [required]The compute rule to compute the RUM-based metric.
aggregation_type [required]The type of aggregation to use.
count, distributioninclude_percentilesToggle to include or exclude percentile aggregations for distribution metrics.
Only present when aggregation_type is distribution.
pathThe path to the value the RUM-based metric will aggregate on.
Only present when aggregation_type is distribution.
event_type [required]The type of RUM events to filter on.
session, view, action, error, resource, long_task, vitalfilterThe RUM-based metric filter. Events matching this filter will be aggregated in this metric.
query [required]The search query - following the RUM search syntax.
*group_byThe rules for the group by.
path [required]The path to the value the RUM-based metric will be aggregated over.
tag_nameEventual name of the tag that gets created. By default, path is used as the tag name.
uniquenessThe rule to count updatable events. Is only set if event_type is sessions or views.
when [required]When to count updatable events. match when the event is first seen, or end when the event is complete.
match, endid [required]The name of the RUM-based metric.
type [required]The type of the resource. The value should always be rum_metrics.
rum_metricsrum_metrics{
"data": {
"attributes": {
"compute": {
"aggregation_type": "distribution",
"include_percentiles": true,
"path": "@duration"
},
"event_type": "session",
"filter": {
"query": "@service:web-ui"
},
"group_by": [
{
"path": "@browser.name",
"tag_name": "browser_name"
}
],
"uniqueness": {
"when": "match"
}
},
"id": "examplerummetric",
"type": "rum_metrics"
}
}応答
Created
The RUM-based metric object.
dataThe RUM-based metric properties.
attributesThe object describing a Datadog RUM-based metric.
computeThe compute rule to compute the RUM-based metric.
aggregation_typeThe type of aggregation to use.
count, distributioninclude_percentilesToggle to include or exclude percentile aggregations for distribution metrics.
Only present when aggregation_type is distribution.
pathThe path to the value the RUM-based metric will aggregate on.
Only present when aggregation_type is distribution.
event_typeThe type of RUM events to filter on.
session, view, action, error, resource, long_task, vitalfilterThe RUM-based metric filter. RUM events matching this filter will be aggregated in this metric.
queryThe search query - following the RUM search syntax.
group_byThe rules for the group by.
pathThe path to the value the RUM-based metric will be aggregated over.
tag_nameEventual name of the tag that gets created. By default, path is used as the tag name.
uniquenessThe rule to count updatable events. Is only set if event_type is session or view.
whenWhen to count updatable events. match when the event is first seen, or end when the event is complete.
match, endidThe name of the RUM-based metric.
typeThe type of the resource. The value should always be rum_metrics.
rum_metricsrum_metrics{
"data": {
"attributes": {
"compute": {
"aggregation_type": "distribution",
"include_percentiles": true,
"path": "@duration"
},
"event_type": "session",
"filter": {
"query": "service:web* AND @http.status_code:[200 TO 299]"
},
"group_by": [
{
"path": "@http.status_code",
"tag_name": "status_code"
}
],
"uniqueness": {
"when": "match"
}
},
"id": "rum.sessions.webui.count",
"type": "rum_metrics"
}
}Bad Request
API error response.
errors [required]A list of errors.
{
"errors": [
"Bad Request"
]
}Not Authorized
API error response.
errors [required]A list of errors.
{
"errors": [
"Bad Request"
]
}Conflict
API error response.
errors [required]A list of errors.
{
"errors": [
"Bad Request"
]
}Too many requests
API error response.
errors [required]A list of errors.
{
"errors": [
"Bad Request"
]
}コード例
# Set your Datadog site and credentials
export DD_SITE="datadoghq.com"
# Use a Personal Access Token or Service Access Token
export DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>"
curl -X POST "https://api.${DD_SITE}/api/v2/rum/config/metrics" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ${DD_BEARER_TOKEN}" \
-d @- << EOF
{
"data": {
"attributes": {
"compute": {
"aggregation_type": "distribution",
"include_percentiles": true,
"path": "@duration"
},
"event_type": "session",
"filter": {
"query": "@service:web-ui"
},
"group_by": [
{
"path": "@browser.name",
"tag_name": "browser_name"
}
],
"uniqueness": {
"when": "match"
}
},
"id": "examplerummetric",
"type": "rum_metrics"
}
}
EOF# Set your Datadog site and credentials
export DD_SITE="us3.datadoghq.com"
# Use a Personal Access Token or Service Access Token
export DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>"
curl -X POST "https://api.${DD_SITE}/api/v2/rum/config/metrics" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ${DD_BEARER_TOKEN}" \
-d @- << EOF
{
"data": {
"attributes": {
"compute": {
"aggregation_type": "distribution",
"include_percentiles": true,
"path": "@duration"
},
"event_type": "session",
"filter": {
"query": "@service:web-ui"
},
"group_by": [
{
"path": "@browser.name",
"tag_name": "browser_name"
}
],
"uniqueness": {
"when": "match"
}
},
"id": "examplerummetric",
"type": "rum_metrics"
}
}
EOF# Set your Datadog site and credentials
export DD_SITE="us5.datadoghq.com"
# Use a Personal Access Token or Service Access Token
export DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>"
curl -X POST "https://api.${DD_SITE}/api/v2/rum/config/metrics" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ${DD_BEARER_TOKEN}" \
-d @- << EOF
{
"data": {
"attributes": {
"compute": {
"aggregation_type": "distribution",
"include_percentiles": true,
"path": "@duration"
},
"event_type": "session",
"filter": {
"query": "@service:web-ui"
},
"group_by": [
{
"path": "@browser.name",
"tag_name": "browser_name"
}
],
"uniqueness": {
"when": "match"
}
},
"id": "examplerummetric",
"type": "rum_metrics"
}
}
EOF# Set your Datadog site and credentials
export DD_SITE="datadoghq.eu"
# Use a Personal Access Token or Service Access Token
export DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>"
curl -X POST "https://api.${DD_SITE}/api/v2/rum/config/metrics" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ${DD_BEARER_TOKEN}" \
-d @- << EOF
{
"data": {
"attributes": {
"compute": {
"aggregation_type": "distribution",
"include_percentiles": true,
"path": "@duration"
},
"event_type": "session",
"filter": {
"query": "@service:web-ui"
},
"group_by": [
{
"path": "@browser.name",
"tag_name": "browser_name"
}
],
"uniqueness": {
"when": "match"
}
},
"id": "examplerummetric",
"type": "rum_metrics"
}
}
EOF# Set your Datadog site and credentials
export DD_SITE="ap1.datadoghq.com"
# Use a Personal Access Token or Service Access Token
export DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>"
curl -X POST "https://api.${DD_SITE}/api/v2/rum/config/metrics" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ${DD_BEARER_TOKEN}" \
-d @- << EOF
{
"data": {
"attributes": {
"compute": {
"aggregation_type": "distribution",
"include_percentiles": true,
"path": "@duration"
},
"event_type": "session",
"filter": {
"query": "@service:web-ui"
},
"group_by": [
{
"path": "@browser.name",
"tag_name": "browser_name"
}
],
"uniqueness": {
"when": "match"
}
},
"id": "examplerummetric",
"type": "rum_metrics"
}
}
EOF# Set your Datadog site and credentials
export DD_SITE="ap2.datadoghq.com"
# Use a Personal Access Token or Service Access Token
export DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>"
curl -X POST "https://api.${DD_SITE}/api/v2/rum/config/metrics" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ${DD_BEARER_TOKEN}" \
-d @- << EOF
{
"data": {
"attributes": {
"compute": {
"aggregation_type": "distribution",
"include_percentiles": true,
"path": "@duration"
},
"event_type": "session",
"filter": {
"query": "@service:web-ui"
},
"group_by": [
{
"path": "@browser.name",
"tag_name": "browser_name"
}
],
"uniqueness": {
"when": "match"
}
},
"id": "examplerummetric",
"type": "rum_metrics"
}
}
EOF# Set your Datadog site and credentials
export DD_SITE="uk1.datadoghq.com"
# Use a Personal Access Token or Service Access Token
export DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>"
curl -X POST "https://api.${DD_SITE}/api/v2/rum/config/metrics" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ${DD_BEARER_TOKEN}" \
-d @- << EOF
{
"data": {
"attributes": {
"compute": {
"aggregation_type": "distribution",
"include_percentiles": true,
"path": "@duration"
},
"event_type": "session",
"filter": {
"query": "@service:web-ui"
},
"group_by": [
{
"path": "@browser.name",
"tag_name": "browser_name"
}
],
"uniqueness": {
"when": "match"
}
},
"id": "examplerummetric",
"type": "rum_metrics"
}
}
EOF# Set your Datadog site and credentials
export DD_SITE="ddog-gov.com"
# Use a Personal Access Token or Service Access Token
export DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>"
curl -X POST "https://api.${DD_SITE}/api/v2/rum/config/metrics" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ${DD_BEARER_TOKEN}" \
-d @- << EOF
{
"data": {
"attributes": {
"compute": {
"aggregation_type": "distribution",
"include_percentiles": true,
"path": "@duration"
},
"event_type": "session",
"filter": {
"query": "@service:web-ui"
},
"group_by": [
{
"path": "@browser.name",
"tag_name": "browser_name"
}
],
"uniqueness": {
"when": "match"
}
},
"id": "examplerummetric",
"type": "rum_metrics"
}
}
EOF# Set your Datadog site and credentials
export DD_SITE="us2.ddog-gov.com"
# Use a Personal Access Token or Service Access Token
export DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>"
curl -X POST "https://api.${DD_SITE}/api/v2/rum/config/metrics" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ${DD_BEARER_TOKEN}" \
-d @- << EOF
{
"data": {
"attributes": {
"compute": {
"aggregation_type": "distribution",
"include_percentiles": true,
"path": "@duration"
},
"event_type": "session",
"filter": {
"query": "@service:web-ui"
},
"group_by": [
{
"path": "@browser.name",
"tag_name": "browser_name"
}
],
"uniqueness": {
"when": "match"
}
},
"id": "examplerummetric",
"type": "rum_metrics"
}
}
EOF// Create a RUM-based metric 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.RumMetricCreateRequest{
Data: datadogV2.RumMetricCreateData{
Attributes: datadogV2.RumMetricCreateAttributes{
Compute: datadogV2.RumMetricCompute{
AggregationType: datadogV2.RUMMETRICCOMPUTEAGGREGATIONTYPE_DISTRIBUTION,
IncludePercentiles: datadog.PtrBool(true),
Path: datadog.PtrString("@duration"),
},
EventType: datadogV2.RUMMETRICEVENTTYPE_SESSION,
Filter: &datadogV2.RumMetricFilter{
Query: "@service:web-ui",
},
GroupBy: []datadogV2.RumMetricGroupBy{
{
Path: "@browser.name",
TagName: datadog.PtrString("browser_name"),
},
},
Uniqueness: &datadogV2.RumMetricUniqueness{
When: datadogV2.RUMMETRICUNIQUENESSWHEN_WHEN_MATCH,
},
},
Id: "examplerummetric",
Type: datadogV2.RUMMETRICTYPE_RUM_METRICS,
},
}
ctx := datadog.NewDefaultContext(context.Background())
ctx = context.WithValue(ctx, datadog.ContextAccessToken, os.Getenv("DD_BEARER_TOKEN"))
configuration := datadog.NewConfiguration()
apiClient := datadog.NewAPIClient(configuration)
api := datadogV2.NewRumMetricsApi(apiClient)
resp, r, err := api.CreateRumMetric(ctx, body)
if err != nil {
fmt.Fprintf(os.Stderr, "Error when calling `RumMetricsApi.CreateRumMetric`: %v\n", err)
fmt.Fprintf(os.Stderr, "Full HTTP response: %v\n", r)
}
responseContent, _ := json.MarshalIndent(resp, "", " ")
fmt.Fprintf(os.Stdout, "Response from `RumMetricsApi.CreateRumMetric`:\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.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" go run "main.go"DD_SITE="us3.datadoghq.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" go run "main.go"DD_SITE="us5.datadoghq.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" go run "main.go"DD_SITE="datadoghq.eu" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" go run "main.go"DD_SITE="ap1.datadoghq.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" go run "main.go"DD_SITE="ap2.datadoghq.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" go run "main.go"DD_SITE="uk1.datadoghq.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" go run "main.go"DD_SITE="ddog-gov.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" go run "main.go"DD_SITE="us2.ddog-gov.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" go run "main.go"// Create a RUM-based metric returns "Created" response
import com.datadog.api.client.ApiClient;
import com.datadog.api.client.ApiException;
import com.datadog.api.client.v2.api.RumMetricsApi;
import com.datadog.api.client.v2.model.RumMetricCompute;
import com.datadog.api.client.v2.model.RumMetricComputeAggregationType;
import com.datadog.api.client.v2.model.RumMetricCreateAttributes;
import com.datadog.api.client.v2.model.RumMetricCreateData;
import com.datadog.api.client.v2.model.RumMetricCreateRequest;
import com.datadog.api.client.v2.model.RumMetricEventType;
import com.datadog.api.client.v2.model.RumMetricFilter;
import com.datadog.api.client.v2.model.RumMetricGroupBy;
import com.datadog.api.client.v2.model.RumMetricResponse;
import com.datadog.api.client.v2.model.RumMetricType;
import com.datadog.api.client.v2.model.RumMetricUniqueness;
import com.datadog.api.client.v2.model.RumMetricUniquenessWhen;
import java.util.Collections;
public class Example {
public static void main(String[] args) {
ApiClient defaultClient = ApiClient.getDefaultApiClient();
defaultClient.setAccessToken(System.getenv("DD_BEARER_TOKEN"));
RumMetricsApi apiInstance = new RumMetricsApi(defaultClient);
RumMetricCreateRequest body =
new RumMetricCreateRequest()
.data(
new RumMetricCreateData()
.attributes(
new RumMetricCreateAttributes()
.compute(
new RumMetricCompute()
.aggregationType(RumMetricComputeAggregationType.DISTRIBUTION)
.includePercentiles(true)
.path("@duration"))
.eventType(RumMetricEventType.SESSION)
.filter(new RumMetricFilter().query("@service:web-ui"))
.groupBy(
Collections.singletonList(
new RumMetricGroupBy()
.path("@browser.name")
.tagName("browser_name")))
.uniqueness(
new RumMetricUniqueness().when(RumMetricUniquenessWhen.WHEN_MATCH)))
.id("examplerummetric")
.type(RumMetricType.RUM_METRICS));
try {
RumMetricResponse result = apiInstance.createRumMetric(body);
System.out.println(result);
} catch (ApiException e) {
System.err.println("Exception when calling RumMetricsApi#createRumMetric");
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.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" java "Example.java"DD_SITE="us3.datadoghq.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" java "Example.java"DD_SITE="us5.datadoghq.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" java "Example.java"DD_SITE="datadoghq.eu" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" java "Example.java"DD_SITE="ap1.datadoghq.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" java "Example.java"DD_SITE="ap2.datadoghq.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" java "Example.java"DD_SITE="uk1.datadoghq.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" java "Example.java"DD_SITE="ddog-gov.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" java "Example.java"DD_SITE="us2.ddog-gov.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" java "Example.java""""
Create a RUM-based metric returns "Created" response
"""
from os import environ
from datadog_api_client import ApiClient, Configuration
from datadog_api_client.v2.api.rum_metrics_api import RumMetricsApi
from datadog_api_client.v2.model.rum_metric_compute import RumMetricCompute
from datadog_api_client.v2.model.rum_metric_compute_aggregation_type import RumMetricComputeAggregationType
from datadog_api_client.v2.model.rum_metric_create_attributes import RumMetricCreateAttributes
from datadog_api_client.v2.model.rum_metric_create_data import RumMetricCreateData
from datadog_api_client.v2.model.rum_metric_create_request import RumMetricCreateRequest
from datadog_api_client.v2.model.rum_metric_event_type import RumMetricEventType
from datadog_api_client.v2.model.rum_metric_filter import RumMetricFilter
from datadog_api_client.v2.model.rum_metric_group_by import RumMetricGroupBy
from datadog_api_client.v2.model.rum_metric_type import RumMetricType
from datadog_api_client.v2.model.rum_metric_uniqueness import RumMetricUniqueness
from datadog_api_client.v2.model.rum_metric_uniqueness_when import RumMetricUniquenessWhen
body = RumMetricCreateRequest(
data=RumMetricCreateData(
attributes=RumMetricCreateAttributes(
compute=RumMetricCompute(
aggregation_type=RumMetricComputeAggregationType.DISTRIBUTION,
include_percentiles=True,
path="@duration",
),
event_type=RumMetricEventType.SESSION,
filter=RumMetricFilter(
query="@service:web-ui",
),
group_by=[
RumMetricGroupBy(
path="@browser.name",
tag_name="browser_name",
),
],
uniqueness=RumMetricUniqueness(
when=RumMetricUniquenessWhen.WHEN_MATCH,
),
),
id="examplerummetric",
type=RumMetricType.RUM_METRICS,
),
)
configuration = Configuration()
configuration.access_token = environ["DD_BEARER_TOKEN"]
with ApiClient(configuration) as api_client:
api_instance = RumMetricsApi(api_client)
response = api_instance.create_rum_metric(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.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" python3 "example.py"DD_SITE="us3.datadoghq.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" python3 "example.py"DD_SITE="us5.datadoghq.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" python3 "example.py"DD_SITE="datadoghq.eu" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" python3 "example.py"DD_SITE="ap1.datadoghq.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" python3 "example.py"DD_SITE="ap2.datadoghq.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" python3 "example.py"DD_SITE="uk1.datadoghq.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" python3 "example.py"DD_SITE="ddog-gov.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" python3 "example.py"DD_SITE="us2.ddog-gov.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" python3 "example.py"# Create a RUM-based metric returns "Created" response
require "datadog_api_client"
DatadogAPIClient.configure do |config|
config.access_token = ENV["DD_BEARER_TOKEN"]
end
api_instance = DatadogAPIClient::V2::RumMetricsAPI.new
body = DatadogAPIClient::V2::RumMetricCreateRequest.new({
data: DatadogAPIClient::V2::RumMetricCreateData.new({
attributes: DatadogAPIClient::V2::RumMetricCreateAttributes.new({
compute: DatadogAPIClient::V2::RumMetricCompute.new({
aggregation_type: DatadogAPIClient::V2::RumMetricComputeAggregationType::DISTRIBUTION,
include_percentiles: true,
path: "@duration",
}),
event_type: DatadogAPIClient::V2::RumMetricEventType::SESSION,
filter: DatadogAPIClient::V2::RumMetricFilter.new({
query: "@service:web-ui",
}),
group_by: [
DatadogAPIClient::V2::RumMetricGroupBy.new({
path: "@browser.name",
tag_name: "browser_name",
}),
],
uniqueness: DatadogAPIClient::V2::RumMetricUniqueness.new({
_when: DatadogAPIClient::V2::RumMetricUniquenessWhen::WHEN_MATCH,
}),
}),
id: "examplerummetric",
type: DatadogAPIClient::V2::RumMetricType::RUM_METRICS,
}),
})
p api_instance.create_rum_metric(body)
Instructions
First install the library and its dependencies and then save the example to example.rb and run following commands:
DD_SITE="datadoghq.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" rb "example.rb"DD_SITE="us3.datadoghq.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" rb "example.rb"DD_SITE="us5.datadoghq.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" rb "example.rb"DD_SITE="datadoghq.eu" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" rb "example.rb"DD_SITE="ap1.datadoghq.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" rb "example.rb"DD_SITE="ap2.datadoghq.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" rb "example.rb"DD_SITE="uk1.datadoghq.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" rb "example.rb"DD_SITE="ddog-gov.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" rb "example.rb"DD_SITE="us2.ddog-gov.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" rb "example.rb"// Create a RUM-based metric returns "Created" response
use datadog_api_client::datadog;
use datadog_api_client::datadogV2::api_rum_metrics::RumMetricsAPI;
use datadog_api_client::datadogV2::model::RumMetricCompute;
use datadog_api_client::datadogV2::model::RumMetricComputeAggregationType;
use datadog_api_client::datadogV2::model::RumMetricCreateAttributes;
use datadog_api_client::datadogV2::model::RumMetricCreateData;
use datadog_api_client::datadogV2::model::RumMetricCreateRequest;
use datadog_api_client::datadogV2::model::RumMetricEventType;
use datadog_api_client::datadogV2::model::RumMetricFilter;
use datadog_api_client::datadogV2::model::RumMetricGroupBy;
use datadog_api_client::datadogV2::model::RumMetricType;
use datadog_api_client::datadogV2::model::RumMetricUniqueness;
use datadog_api_client::datadogV2::model::RumMetricUniquenessWhen;
#[tokio::main]
async fn main() {
let body = RumMetricCreateRequest::new(RumMetricCreateData::new(
RumMetricCreateAttributes::new(
RumMetricCompute::new(RumMetricComputeAggregationType::DISTRIBUTION)
.include_percentiles(true)
.path("@duration".to_string()),
RumMetricEventType::SESSION,
)
.filter(RumMetricFilter::new("@service:web-ui".to_string()))
.group_by(vec![
RumMetricGroupBy::new("@browser.name".to_string()).tag_name("browser_name".to_string())
])
.uniqueness(RumMetricUniqueness::new(
RumMetricUniquenessWhen::WHEN_MATCH,
)),
"examplerummetric".to_string(),
RumMetricType::RUM_METRICS,
));
let configuration = datadog::Configuration::new();
let api = RumMetricsAPI::with_config(configuration);
let resp = api.create_rum_metric(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.com" DD_API_KEY="<API-KEY>" DD_APP_KEY="<APP-KEY>" cargo runDD_SITE="us3.datadoghq.com" DD_API_KEY="<API-KEY>" DD_APP_KEY="<APP-KEY>" cargo runDD_SITE="us5.datadoghq.com" DD_API_KEY="<API-KEY>" DD_APP_KEY="<APP-KEY>" cargo runDD_SITE="datadoghq.eu" DD_API_KEY="<API-KEY>" DD_APP_KEY="<APP-KEY>" cargo runDD_SITE="ap1.datadoghq.com" DD_API_KEY="<API-KEY>" DD_APP_KEY="<APP-KEY>" cargo runDD_SITE="ap2.datadoghq.com" DD_API_KEY="<API-KEY>" DD_APP_KEY="<APP-KEY>" cargo runDD_SITE="uk1.datadoghq.com" DD_API_KEY="<API-KEY>" DD_APP_KEY="<APP-KEY>" cargo runDD_SITE="ddog-gov.com" DD_API_KEY="<API-KEY>" DD_APP_KEY="<APP-KEY>" cargo runDD_SITE="us2.ddog-gov.com" DD_API_KEY="<API-KEY>" DD_APP_KEY="<APP-KEY>" cargo run/**
* Create a RUM-based metric returns "Created" response
*/
import { client, v2 } from "@datadog/datadog-api-client";
const configuration = client.createConfiguration({
authMethods: {
AuthZ: {
accessToken: process.env.DD_BEARER_TOKEN as string,
},
},
});
const apiInstance = new v2.RumMetricsApi(configuration);
const params: v2.RumMetricsApiCreateRumMetricRequest = {
body: {
data: {
attributes: {
compute: {
aggregationType: "distribution",
includePercentiles: true,
path: "@duration",
},
eventType: "session",
filter: {
query: "@service:web-ui",
},
groupBy: [
{
path: "@browser.name",
tagName: "browser_name",
},
],
uniqueness: {
when: "match",
},
},
id: "examplerummetric",
type: "rum_metrics",
},
},
};
apiInstance
.createRumMetric(params)
.then((data: v2.RumMetricResponse) => {
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.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" tsc "example.ts"DD_SITE="us3.datadoghq.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" tsc "example.ts"DD_SITE="us5.datadoghq.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" tsc "example.ts"DD_SITE="datadoghq.eu" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" tsc "example.ts"DD_SITE="ap1.datadoghq.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" tsc "example.ts"DD_SITE="ap2.datadoghq.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" tsc "example.ts"DD_SITE="uk1.datadoghq.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" tsc "example.ts"DD_SITE="ddog-gov.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" tsc "example.ts"DD_SITE="us2.ddog-gov.com" DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>" tsc "example.ts"