Logs uploader must be enabled for the account before the configuration UI is available. Contact Gcore Support or use Contact support on the Logs uploader page in the Gcore Customer Portal.
Logs uploader configuration
In the Customer Portal, open CDN, click Logs, and select Logs uploader. Control which fields are exported, how frequently the logs are delivered, and which storage service they are sent to. Supported destinations include Gcore Object Storage, S3-compatible storage, FTP and SFTP servers, and HTTP(S) endpoints. Use these exports for observability, analytics, or compliance workflows while managing data volume and processing requirements. The Logs uploader screen has three tabs:- Configurations — link policies and targets to deliver logs
- Policies — set export rules and schedules
- Targets — connect upload destinations
First-time setup
A configuration links a policy and a target. Create them in this order before creating the configuration.1
Create a policy
Go to the Policies tab and click Add policy. Select the log fields, set the time interval, and configure the file name format and size limit.
2
Create a target
Go to the Targets tab and click Add target. Select a destination type, such as S3, FTP, SFTP, or HTTP(S), and enter the connection details. A green
Authentication complete status confirms the target is reachable.3
Create a configuration
Go to the Configurations tab and click Add configuration. Link the policy and target created in the previous steps, then click Add configuration to activate.
4
Verify log delivery
Generate CDN traffic to a resource covered by the configuration. After the configured time interval has elapsed, check the destination for a new log file. Confirm that the file contains request entries with the expected fields.
- Configurations
- Policies
- Targets
Configurations tab
Configurations tab
Select the Configurations tab to view a table of configurations:
- Configuration ID
Click the column header to sort the table by configuration IDs. - Configuration name
- Click the column header to sort the table by configuration names.
- Click a configuration name to edit the configuration.
- Policy
Click a policy name to edit the linked policy. - Target
Click a target name to edit the linked target. - Status
Linked target status is displayed in the Status column. To re-run the authentication check, click (refresh) at the end of the status message. - More options
Click ⋯ (more options) in the last column to Edit, Disable, or Delete the configuration in that row. - Add configuration
Click Add configuration (top right) to create a new configuration.
Add configurations
Add configurations
1
Open the configuration form
Navigate to Logs uploader, select the Configurations tab, and click Add configuration.
The Enable configuration switch appears at the top of the Add configuration window; to disable the configuration, toggle the switch to the left.
2
Select resources
Select the resources for this configuration:
- All Resources
- Specific Resource(s)
For all resources, including newly created:
- Enter a Name for the configuration.
3
Link a policy and target
- Select a Policy to link from the drop-down list.
- Select a Target to link from the drop-down list.
4
Add the configuration
Click Add configuration again to finish and return to the Logs uploader. The new configuration appears in the table on the Configurations tab.
Edit configurations
Edit configurations
1
Open the configuration
- Navigate to Logs uploader and select the Configurations tab.
- Click the configuration name in the Configurations column, or click ⋯ (more options) at the end of that row and select Edit.
The Enable configuration switch appears at the top of the Edit configuration window; to disable the configuration, toggle the switch to the left.
2
Update resources
Select the resources for this configuration:
- All Resources
- Specific Resource(s)
For all resources, including newly created:
- Edit the Name field.
3
Update the links
- Select a Policy to link from the drop-down list.
- Select a Target to link from the drop-down list.
4
Save the configuration
Click Save changes (top right) to return to the Logs uploader.
Enable, disable, or delete configurations
Enable, disable, or delete configurations
1
Find the configuration
Navigate to Logs uploader and select the Configurations tab.
2
Apply the action
In the row with the configuration name, click ⋯ (more options) in the last column and select Enable, Disable, or Delete.
Log schema and field definitions
The exported log schema includes standard CDN request fields, internal status codes, and format examples.Log format example
Log format example
The format below is a non-exhaustive example. It does not include every available field — for instance,
$timestamp_request_start, $masked_remote_addr, $query_string, and $quic are in the field table but not shown here. The actual log output depends on which fields are selected, their order, and the delimiter and separator configured in the policy.New fields may appear at the end of the line. When fields are added to logs, an email notification is sent about the update.Log fields
Log fields
The following table contains a complete list of available log fields. Fields labeled “internal system variable” relate to the internal CDN system and can be ignored for most analytics use cases.Other fields can help with traffic analysis or statistics.
The
$timestamp variable always produces an empty value. Use [$time_local] for a Common Log Format timestamp or $timestamp_request_start for request-start time in Unix epoch milliseconds. No client port field is available.Internal status codes
Internal status codes
Internal status codes identify the CDN rule or feature that generated a response.
Log schema versioning
Log schema versioning
For HTTP(S) targets, Logs uploader sends a JSON request payload whose
v field identifies the schema version — for instance, "v":"10". This metadata belongs to the JSON payload rather than the selectable CDN log fields, so it does not appear in the log format example or field table.The version increments when fields are added, renamed, or removed. New fields are added in a backward-compatible way where possible, so most schema changes do not require parser updates. Breaking changes are announced in advance through standard CDN update notifications. Pin downstream parsers (SIEM, ETL) to a known version and check v to detect schema changes.WAAP log fields
When a CDN resource has WAAP enabled, the Logs uploader automatically appends WAAP security event fields to each request log line, alongside the CDN fields described above. Each request produces a single merged log entry, so CDN access data and the matching WAAP security verdict arrive correlated on the same delivery channel as existing CDN logs — no separate file and no extra configuration.WAAP fields are added only for resources that have WAAP enabled and use the current edge protection architecture. For resources without WAAP, the existing CDN log line is unchanged.
DDoS protection logs are not exported through the Logs uploader. Only per-request WAAP security events are included. DDoS attack analytics remain available through the WAAP API and dashboard.
WAAP fields
WAAP fields
The following fields are appended to each request log line when WAAP is enabled on the resource.
Decision and optional action values
Decision and optional action values
The
$waap_decision field gives the final security verdict that WAAP applied at the edge:The
$waap_optional_action field describes any additional action applied alongside the decision:Challenged requests are recorded as
blocked. Logs are written at the edge as soon as the response is sent, before WAAP knows whether the client will solve the challenge. When the client passes the challenge, subsequent requests from the same session are exported with $waap_decision="passed" and $waap_passed_incident_id pointing back to the original incident. Trace the final outcome by joining the two log lines on the session identifier. The full per-incident result is also available through the WAAP Request Details API.