import os
from gcore import Gcore
client = Gcore(
api_key=os.environ.get("GCORE_API_KEY"), # This is the default and can be omitted
)
resource_usage_stats = client.cdn.statistics.get_resource_usage_series(
from_="from",
granularity="granularity",
metrics="metrics",
service="service",
to="to",
)
print(resource_usage_stats._1_example)package main
import (
"context"
"fmt"
"github.com/G-Core/gcore-go"
"github.com/G-Core/gcore-go/cdn"
"github.com/G-Core/gcore-go/option"
)
func main() {
client := gcore.NewClient(
option.WithAPIKey("My API Key"),
)
resourceUsageStats, err := client.CDN.Statistics.GetResourceUsageSeries(context.TODO(), cdn.StatisticGetResourceUsageSeriesParams{
From: "from",
Granularity: "granularity",
Metrics: "metrics",
Service: "service",
To: "to",
})
if err != nil {
panic(err.Error())
}
fmt.Printf("%+v\n", resourceUsageStats.Number1Example)
}
curl --request GET \
--url https://api.gcore.com/cdn/statistics/series \
--header 'Authorization: <api-key>'const options = {method: 'GET', headers: {Authorization: '<api-key>'}};
fetch('https://api.gcore.com/cdn/statistics/series', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.gcore.com/cdn/statistics/series",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}HttpResponse<String> response = Unirest.get("https://api.gcore.com/cdn/statistics/series")
.header("Authorization", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.gcore.com/cdn/statistics/series")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"resource": {
"1": {
"region": {
"asia": {
"metrics": {
"sent_bytes": [
[
1543622400,
17329220573
]
],
"total_bytes": [
[
1543622400,
17384617989
]
],
"upstream_bytes": [
[
1543622400,
55397416
]
]
}
}
}
}
}
}CDN resource statistics
Get information about CDN resource statistics for up to 365 days starting today.
import os
from gcore import Gcore
client = Gcore(
api_key=os.environ.get("GCORE_API_KEY"), # This is the default and can be omitted
)
resource_usage_stats = client.cdn.statistics.get_resource_usage_series(
from_="from",
granularity="granularity",
metrics="metrics",
service="service",
to="to",
)
print(resource_usage_stats._1_example)package main
import (
"context"
"fmt"
"github.com/G-Core/gcore-go"
"github.com/G-Core/gcore-go/cdn"
"github.com/G-Core/gcore-go/option"
)
func main() {
client := gcore.NewClient(
option.WithAPIKey("My API Key"),
)
resourceUsageStats, err := client.CDN.Statistics.GetResourceUsageSeries(context.TODO(), cdn.StatisticGetResourceUsageSeriesParams{
From: "from",
Granularity: "granularity",
Metrics: "metrics",
Service: "service",
To: "to",
})
if err != nil {
panic(err.Error())
}
fmt.Printf("%+v\n", resourceUsageStats.Number1Example)
}
curl --request GET \
--url https://api.gcore.com/cdn/statistics/series \
--header 'Authorization: <api-key>'const options = {method: 'GET', headers: {Authorization: '<api-key>'}};
fetch('https://api.gcore.com/cdn/statistics/series', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.gcore.com/cdn/statistics/series",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}HttpResponse<String> response = Unirest.get("https://api.gcore.com/cdn/statistics/series")
.header("Authorization", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.gcore.com/cdn/statistics/series")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"resource": {
"1": {
"region": {
"asia": {
"metrics": {
"sent_bytes": [
[
1543622400,
17329220573
]
],
"total_bytes": [
[
1543622400,
17384617989
]
],
"upstream_bytes": [
[
1543622400,
55397416
]
]
}
}
}
}
}
}Authorizations
API key for authentication. Make sure to include the word apikey, followed by a single space and then your token.
Example: apikey 1234_abcdef
Query Parameters
Service name.
Possible value:
- CDN
Beginning of the requested time period (ISO 8601/RFC 3339 format, UTC.)
Example:
- &from=2018-12-01T00:00:00.000
End of the requested time period (ISO 8601/RFC 3339 format, UTC.)
Example:
- &to=2018-12-01T01:00:00.000
Duration of time chunks into which the data will be divided.
Possible values:
- 1m - available only for up to 1 month in the past.
- 5m
- 15m
- 1h
- 1d
Types of statistics data.
Possible values:
upstream_bytes- Traffic in bytes from an origin server to CDN servers or to origin shielding when used.sent_bytes- Traffic in bytes from CDN servers to clients.shield_bytes- Traffic in bytes from Origin shielding to CDN servers.total_bytes-shield_bytes,upstream_bytesandsent_bytescombined.cdn_bytes-sent_bytesandshield_bytescombined.- requests - Number of requests to edge servers.
responses_2xx- Number of 2xx response codes.responses_3xx- Number of 3xx response codes.responses_4xx- Number of 4xx response codes.responses_5xx- Number of 5xx response codes.responses_hit- Number of responses with the header Cache: HIT.responses_miss- Number of responses with the header Cache: MISS.cache_hit_traffic_ratio- Formula: 1 -upstream_bytes/sent_bytes. We deduct the non-cached traffic from the total traffic amount.
Output data grouping.
Possible values:
- client - Data is grouped by clients.
- resource - Data is grouped by CDN resources.
- region - Data is grouped by regions of CDN edge servers.
- country - Data is grouped by countries of CDN edge servers.
- vhost - Data is grouped by resources CNAMEs.
client_country- Data is grouped by countries, based on end-users' location.
To request multiple values, use:
- &
group_by=client&group_by=resource
Names of countries for which data should be displayed.
English short names from ISO 3166 standard without the definite article ("the") should be used.
To request multiple values, use:
- &countries=france&countries=denmark
Regions for which data is displayed.
Possible values:
- na - North America
- eu - Europe
- cis - Commonwealth of Independent States
- asia - Asia
- au - Australia
- latam - Latin America
- me - Middle East
- africa - Africa
- sa - South America
CDN resources IDs.
To request multiple values, use:
- &resource=1&resource=2
Client accounts IDs.
To request multiple values, use:
- &client=1&client=2
Response
Successful.
Statistics information grouped by client accounts IDs.
Statistics information grouped by CDN resources.
Regions for which data is displayed.
Possible values:
- asia - Asia
- au - Australia
- cis - CIS (Commonwealth of Independent States)
- eu - Europe
- latam - Latin America
- me - Middle East
- na - North America.
- africa - Africa
- sa - South America
Statistics parameters.
Bytes from the upstream to the CDN servers.
Represented by two values, for example:
- 1543622400 - time in the UNIX timestamp when statistics were received.
- 17329220573 - bytes.
Bytes from CDN servers to the end-users.
Represented by two values, for example:
- 1543622400 - time in the UNIX timestamp when statistics were received.
- 17329220573 - bytes.
Upstream bytes and sent_bytes combined.
Represented by two values, for example:
- 1543622400 - time in the UNIX timestamp when statistics were received.
- 17329220573 - bytes.
Was this page helpful?