Creates a log data delivery profile for RTLD CDN.
Create a RTLD CDN profile via the following request:
HTTP Method | Request URI |
---|---|
POST |
https://api.transactcdn.com/v2/mcc/customers/AccountNumber/rtld/settings |
Define the following variable when submitting the above request:
VariableA variable represents a value that must be replaced. A variable consists of either a URL segment (e.g., "0001" in /0001/) or a query string value (e.g., "3" in mediaTypes=3). | Description |
---|---|
Required |
|
This endpointIdentifies a request's connection point to our REST API service. only takes advantage of common request headers.
Pass the following request body parameters:
Name | Data Type | Description |
---|---|---|
Required |
Object |
Required when delivery_method is set to aws_s3. Contains the configuration for the AWS S3 log delivery method. |
Required |
Object |
Required when delivery_method is set to azure_blob_storage. Contains the configuration for the Azure Blob Storage log delivery method. |
custom_cookies |
Array of string values |
Defines each cookie that will be logged for each request. |
custom_request_headers |
Array of string values |
Defines each request header that will be logged for each request. |
custom_response_headers |
Array of string values |
Defines each response header that will be logged for each request. |
Required |
Object |
Required when delivery_method is set to datadog. Contains the configuration for the Datadog log delivery method. |
Required |
String |
Determines the destination (e.g., aws_s3 or azure_blob_storage) to which log data will be delivered. Use the Get Log Delivery Methods endpoint to retrieve the set of valid values for this parameter. You should only configure the delivery method defined by this parameter. For example, if you set this parameter to http_post, you should define the http_post object and then either omit or set the objects for other delivery methods (e.g., aws_s3 or azure_blob_storage) to null. |
description |
String |
Defines the log delivery profile's description. |
downsampling_rate |
Decimal |
Determines the rate at which log data will be downsampled. Use the Get Log Downsampling Rates endpoint to retrieve the set of valid values for this parameter. |
enabled |
Boolean |
Determines whether RTLD will use this profile to deliver log data. Valid values are: true | false
|
fields Required |
Array of string values |
Defines the set of log fields that will be delivered. Use the Get Log Fields (RTLD CDN) endpoint to retrieve the set of valid values for this parameter. |
Object |
Contains your log data filtering configuration. |
|
Required |
Object |
Required when delivery_method is set to gcs. Contains the configuration for the Google Cloud Storage log delivery method. |
Required |
Object |
Required when delivery_method is set to http_post. Contains the configuration for the HTTP POST log delivery method. |
log_format |
String |
Determines the log data's format. Valid values are: json | json_array | json_lines
This property may only be defined when delivery_method is set to http_post, aws_s3, azure_blob_storage, or gcs. RTLD uses a default log format when this property is set to a null value. |
Required |
Object |
Required when delivery_method is set to new_relic. Contains the configuration for the New Relic log delivery method. |
platforms Required |
Array |
Set this property to adn. |
profile_name |
String |
Determines the log delivery profile's name. |
Required |
Object |
Required when delivery_method is set to splunk_enterprise. Contains the configuration for the Splunk Enterprise log delivery method. |
Required |
Object |
Required when delivery_method is set to sumo_logic. Contains the configuration for the Sumo Logic log delivery method. |
The aws_s3 object describes the AWS S3 log delivery method using the following properties:
Name | Data Type | Description |
---|---|---|
bucket Required |
String |
Required when delivery_method is set to aws_s3. Determines the AWS S3 bucket to which log data will be delivered. |
prefix |
String |
Defines the prefix that identifies a virtual log file storage location and/or a prefix that will be added to each object added to your bucket. |
region Required |
String |
Required when delivery_method is set to aws_s3. Determines the region assigned to the AWS S3 bucket defined by the bucket parameter. Use the Get AWS Regions endpoint to retrieve the set of valid values for this parameter. |
The azure_blob_storage object describes the Azure Blob Storage log delivery method using the following properties:
Name | Data Type | Description |
---|---|---|
access_key Required |
String |
Required when access_type is set to access_key. Determines the access key through which log data uploads will be authorized. |
access_type Required |
String |
Required when delivery_method is set to azure_blob_storage. Determines whether log data uploads will be authorized via a SAS token or an access key. Use the Get Access Types (Azure Blob Storage) endpoint to retrieve the set of valid values for this parameter. |
prefix |
String |
Defines a virtual log file storage location and/or a prefix that will be added to each log file added to your container. |
token Required |
String |
Required when access_type is set to sas_token. Defines the SAS token through which log data uploads will be authorized. |
url Required |
String |
Required when delivery_method is set to azure_blob_storage. Defines a URL that points to the Blob container to which log data will be posted. |
The datadog object describes the Datadog log delivery method using the following properties:
Name | Data Type | Description |
---|---|---|
api_key Required |
String |
Required when delivery_method is set to datadog. Defines the API key through which log data uploads will be authorized. |
service_attribute_value Required |
String |
Required when delivery_method is set to datadog. Defines a value through which uploaded log data will be identified within the Datadog environment. |
site Required |
String |
Required when delivery_method is set to datadog. Determines the Datadog site to which log data will be delivered. Valid values are: us | eu
|
The gcs object describes the Google Cloud Storage log delivery method using the following properties:
Name | Data Type | Description |
---|---|---|
bucket Required |
String |
Required when delivery_method is set to gcs. Determines the Google Cloud Storage bucket to which log data will be delivered. |
prefix |
String |
Defines the prefix that identifies a virtual log file storage location and/or a prefix that will be added to each object added to your bucket. |
The filters object describes your log filtering configuration using the following properties:
Name | Data Type | Description |
---|---|---|
cnames |
Array of string values |
Specify a string value for each edge CNAME for which log data will be delivered. Omit this parameter or define an empty array if log data should not be filtered by edge CNAMEs. Retrieve edge CNAMEs via the Name parameter of the Get All Edge CNAMEs endpoint. Example: "cnames": ["cdn1.example.com", "cdn2.example.com"],
|
cnames_condition |
String |
Determines how log data will be filtered by edge CNAME(s). Valid values are:
|
status_codes |
Array of string values |
Specify a string value for each HTTP status code for which log data will be delivered. Omit this parameter or define an empty array if log data should not be filtered by HTTP status codes. Use the Get HTTP Status Codes endpoint to retrieve the set of valid values for this parameter. Example: "status_codes": ["2xx", "3xx"],
|
user_agent_regexp |
String |
Defines a RE2-compatible regular expression pattern that identifies the set of user agents by which log data will be filtered. A null value indicates that log data will not be filtered by a user agent. |
The http_post object describes the HTTP POST log delivery method using the following properties:
Name | Data Type | Description |
---|---|---|
authentication_type Required |
String |
Required when delivery_method is set to http_post. Determines how log delivery requests will be authenticated to your web servers. Use the Get HTTP POST Authentication Methods endpoint to retrieve the set of valid values for this parameter. |
destination_endpoint Required |
String |
Required when delivery_method is set to http_post. Defines the absolute URL to which log data will be delivered. Sample value: https://logs.example.com/cdn/
|
password Required |
String |
Required when authentication_type is set to http_basic. Defines the password through which requests to your web server will be authenticated. Base-64 encoding will applied to the specified credentials. After which, the encoded value will be passed via the Authorization header. |
token Required |
String |
Required when authentication_type is set to custom_authentication. Defines the token value that will be passed via the Authorization request header whenever log data is delivered to your web servers. |
username Required |
String |
Required when authentication_type is set to http_basic. Determines the user name through which requests to your web server will be authenticated. |
The new_relic object describes the New Relic log delivery method using the following properties:
Name | Data Type | Description |
---|---|---|
account_id Required |
String |
Required when delivery_method is set to new_relic. Identifies the system-defined ID for the New Relic account to which log data will be uploaded. |
event_type Required |
String |
Required when delivery_method is set to new_relic. Defines the label that identifies log data delivered to New Relic as a result of this profile. Specify a label that solely consists of alphanumeric characters, underscores, and colons. |
insert_key Required |
String |
Required when delivery_method is set to new_relic. Defines the Inserts insight API key through which log data uploads will be authorized. |
The splunk_enterprise object describes the Splunk Enterprise log delivery method using the following properties:
Name | Data Type | Description |
---|---|---|
token Required |
String |
Required when delivery_method is set to splunk_enterprise. Defines the token for the HTTP Event Collector configuration associated with the URL corresponding to the url parameter. |
url Required |
String |
Required when delivery_method is set to splunk_enterprise. Defines a URL that points to your Splunk Enterprise's HTTP Event Collector configuration. Default URL syntax: https://{Splunk-Enterprise-Hostname}Replace this variable with the hostname where your instance of Splunk Enterprise is hosted.:{port}Identifies the port number (e.g., 8088) that the HTTP Event Collector is listening for data. This port number may be configured when defining your HEC's global settings./services/collector/raw
|
The sumo_logic object describes the Sumo Logic log delivery method using the following properties:
Name | Data Type | Description |
---|---|---|
url Required |
String |
Required when delivery_method is set to sumo_logic. Defines a URL that points to the HTTP source defined within Sumo Logic. |
The response to the above request includes an HTTP status code, response headers, and a response body.
A status code indicates whether the request was successfully performed.
The response for this endpoint only includes standard HTTP response headers.
The response body for a successful request contains the following response element:
Name | Data Type | Description |
---|---|---|
@id |
String |
Indicates the relative path for an endpoint that returns this profile. |
@type |
String |
Returns RtldSetting. |
account_number |
String |
Indicates your customer account number. |
Object |
Contains the configuration for the AWS S3 log delivery method. |
|
Object |
Contains the configuration for the Azure Blob Storage log delivery method. |
|
custom_cookies |
Array of string values |
Indicates each cookie that will be logged for each request. |
custom_request_headers |
Array of string values |
Indicates each request header that will be logged for each request. |
custom_response_headers |
Array of string values |
Indicates each response header that will be logged for each request. |
Object |
Contains the configuration for the Datadog log delivery method. |
|
delivery_method |
String |
Indicates the destination (e.g., aws_s3 or azure_blob_storage) to which log data will be delivered. |
description |
String |
Indicates the log delivery profile's description. |
downsampling_rate |
Decimal |
Indicates the rate at which log data will be downsampled. RTLD will not downsample log data when this property is set to a null value. |
enabled |
Boolean |
Indicates whether RTLD will use this profile to deliver log data. Valid values are: true | false
|
fields |
Array of string values |
Indicates the set of log fields that will be delivered. |
Object |
Contains your log data filtering configuration. |
|
Object |
Contains the configuration for the Google Cloud Storage log delivery method. |
|
Object |
Contains the configuration for the HTTP POST log delivery method. |
|
id |
Integer |
Indicates the system-defined ID for a RTLD |
log_format |
String |
Indicates the log data's format. Valid values are: json | json_array | json_lines
RTLD uses a default log format when this property is set to a null value. |
Object |
Contains the configuration for the New Relic log delivery method. |
|
platforms |
Array |
Returns adn. |
profile_name |
String |
Indicates the log delivery profile's name. |
Object |
Contains the configuration for the Splunk Enterprise log delivery method. |
|
Object |
Contains the configuration for the Sumo Logic log delivery method. |
The aws_s3 object describes the AWS S3 log delivery method using the following properties:
Name | Data Type | Description |
---|---|---|
bucket |
String |
Indicates the AWS S3 bucket to which log data will be delivered. |
prefix |
String |
Indicates the prefix that identifies a virtual log file storage location and/or a prefix that will be added to each object added to your bucket. |
region |
String |
Indicates the region assigned to the AWS S3 bucket defined by the bucket parameter. |
The azure_blob_storage object describes the Azure Blob Storage log delivery method using the following properties:
Name | Data Type | Description |
---|---|---|
access_key |
String |
Indicates the access key through which log data uploads will be authorized. |
access_type |
String |
Indicates whether log data uploads will be authorized via a SAS token or an access key. |
masked_access_key |
String |
Indicates a masked value that represents the access key defined within the access_key element. |
masked_token |
String |
Indicates a masked value that represents the SAS token defined within the token element. |
prefix |
String |
Indicates a virtual log file storage location and/or a prefix that will be added to each log file added to your container. |
token |
String |
Indicates the SAS token through which log data uploads will be authorized. |
url |
String |
Indicates a URL that points to the Blob container to which log data will be posted. |
The datadog object describes the Datadog log delivery method using the following properties:
Name | Data Type | Description |
---|---|---|
api_key |
String |
Indicates the |
masked_api_key |
String |
Indicates a masked value that represents the API key defined within the api_key element. |
service_attribute_value |
String |
Indicates a value through which uploaded log data will be identified within the Datadog environment. |
site |
String |
Indicates the Datadog site to which log data will be delivered. Valid values are: us | eu
|
The gcs object describes the Google Cloud Storage log delivery method using the following properties:
Name | Data Type | Description |
---|---|---|
bucket |
String |
Indicates the Google Cloud Storage bucket to which log data will be delivered. |
prefix |
String |
Indicates the prefix that identifies a virtual log file storage location and/or a prefix that will be added to each object added to your bucket. |
The filters object describes your log filtering configuration using the following properties:
Name | Data Type | Description |
---|---|---|
cnames |
Array of string values |
Indicates the set of edge CNAMEs by which log data will be filtered. A null value indicates that log data will not be filtered by an edge CNAME. |
cnames_condition |
String |
Indicates how log data will be filtered by edge CNAME(s). Valid values are:
|
status_codes |
Array of string values |
Indicates the set of HTTP status codes by which log data will be filtered. A null value indicates that log data will not be filtered by an HTTP status code. |
user_agent_regexp |
String |
Indicates a RE2-compatible regular expression pattern that identifies the set of user agents by which log data will be filtered. A null value indicates that log data will not be filtered by a user agent. |
The http_post object describes the HTTP POST log delivery method using the following properties:
Name | Data Type | Description |
---|---|---|
authentication_type |
String |
Indicates how log delivery requests will be authenticated to your web servers. |
destination_endpoint |
String |
Indicates the absolute URL to which log data will be delivered. |
masked_password |
String |
Indicates a masked value that represents the password defined within the password element. |
masked_token |
String |
Indicates a masked value that represents the token defined within the token element. |
password |
String |
Indicates the |
token |
String |
Indicates the token value that will be passed via the Authorization request header whenever log data is delivered to your web servers. |
username |
String |
Indicates the user name through which requests to your web server will be authenticated. |
The new_relic object describes the New Relic log delivery method using the following properties:
Name | Data Type | Description |
---|---|---|
account_id |
String |
Indicates the system-defined ID for the New Relic account to which log data will be uploaded. |
event_type |
String |
Indicates the label that identifies log data delivered to New Relic as a result of this profile. Specify a label that solely consists of alphanumeric characters, underscores, and colons. |
insert_key |
String |
Indicates the Inserts insight API key through which log data uploads will be authorized. |
masked_insert_key |
String |
Indicates a masked value that represents the Inserts insight API key defined within the insert_key element. |
The splunk_enterprise object describes the Splunk Enterprise log delivery method using the following properties:
Name | Data Type | Description |
---|---|---|
masked_token |
String |
Indicates a masked value that represents the token defined within the token element. |
token |
String |
Indicates the token for the HTTP Event Collector configuration associated with the URL corresponding to the url parameter. |
url |
String |
Indicates a URL that points to your Splunk Enterprise's HTTP Event Collector configuration. |
The sumo_logic object describes the Sumo Logic log delivery method using the following properties:
Name | Data Type | Description |
---|---|---|
masked_url |
String |
Indicates a masked value that represents the URL defined within the url element. |
url |
String |
Indicates a URL that points to the HTTP source defined within Sumo Logic. |
The response body for an unsuccessful request will contain an error response that provides additional information.
A sample JSON request is shown below.
POST https://api.transactcdn.com/v2/mcc/customers/0001/rtld/settings HTTP/1.1
Authorization: TOK:12345678-1234-1234-1234-1234567890ab
Accept: application/json
Content-Type: application/json
Host: api.transactcdn.com
Content-Length: 513
{ "delivery_method": "http_post", "fields": ["user_agent", "rewritten_path", "path", "timestamp", "client_ip", "client_ip_version", "status_code", "status", "cache_status", "bytes_out", "write_time", "file_size", "server_ip", "server_port", "method", "host", "query", "auth_user", "read_time"], "platforms": [ "adn" ], "http_post": { "destination_endpoint": "https://logs.example.com/cdn/", "authentication_type": "none", "token": null, "username": null, "password": null } }
A sample JSON response is shown below.
HTTP/1.1 200 OK
Cache-Control: no-cache
Content-Type: application/json; charset=utf-8
Date: Thu, 15 Apr 2021 12:00:00 GMT
Content-Length: 900
{ "@id": "/v2/mcc/customers/0001/rtld/settings", "@type": "RtldSetting", "id": 20, "account_number": "0001", "delivery_method": "http_post", "enabled": false, "downsampling_rate": null, "fields": ["user_agent", "rewritten_path", "path", "timestamp", "client_ip", "client_ip_version", "status_code", "status", "cache_status", "bytes_out", "write_time", "file_size", "server_ip", "server_port", "method", "host", "query", "auth_user", "read_time"], "platforms": [ "adn" ], "filters": { "status_codes": null, "cnames": null }, "aws_s3": null, "http_post": { "destination_endpoint": "https://logs.example.com/cdn/", "authentication_type": "none", "token": null, "username": null, "password": null }, "sumo_logic": null, "splunk_enterprise": null, "azure_blob_storage": null }