flightRecorderSettings()

API Stability Preview

The flightRecorderSettings() GraphQL query field is used to return the Java Flight Recorder settings for the specified virtual host. There's no way to access this information through the UI; you'll have to use this GraphQL query.

Syntax

graphql
flightRecorderSettings(
       vhost: integer!
    ): FlightRecorderSettings

There are no special given datatypes for this query field. For the vhost, enter the identification number of the virtual host. For the return results, you get only a couple of settings: whether old object sampling is enabled and for how long.

Example

Below is an example of how to use this query field:

Raw
graphql
query {
  flightRecorderSettings(vhost: 1)
  {oldObjectSampleEnabled, oldObjectSampleDurationMinutes}
}
Mac OS or Linux (curl)
shell
curl -v -X POST $YOUR_LOGSCALE_URL/graphql \
    -H "Authorization: Bearer $TOKEN" \
    -H "Content-Type: application/json" \
    -d @- << EOF
{"query" : "query {
  flightRecorderSettings(vhost: 1)
  {oldObjectSampleEnabled, oldObjectSampleDurationMinutes}
}"
}
EOF
Mac OS or Linux (curl) One-line
shell
curl -v -X POST $YOUR_LOGSCALE_URL/graphql \
    -H "Authorization: Bearer $TOKEN" \
    -H "Content-Type: application/json" \
    -d @- << EOF
{"query" : "query {
  flightRecorderSettings(vhost: 1)
  {oldObjectSampleEnabled, oldObjectSampleDurationMinutes}
}"
}
EOF
Windows Cmd and curl
shell
curl -v -X POST $YOUR_LOGSCALE_URL/graphql ^
    -H "Authorization: Bearer $TOKEN" ^
    -H "Content-Type: application/json" ^
    -d @'{"query" : "query { ^
  flightRecorderSettings(vhost: 1) ^
  {oldObjectSampleEnabled, oldObjectSampleDurationMinutes} ^
}" ^
} '
Windows Powershell and curl
powershell
curl.exe -X POST 
    -H "Authorization: Bearer $TOKEN"
    -H "Content-Type: application/json"
    -d '{"query" : "query {
  flightRecorderSettings(vhost: 1)
  {oldObjectSampleEnabled, oldObjectSampleDurationMinutes}
}"
}'
    "$YOUR_LOGSCALE_URL/graphql"
Perl
perl
#!/usr/bin/perl

use HTTP::Request;
use LWP;

my $TOKEN = "TOKEN";

my $uri = '$YOUR_LOGSCALE_URL/graphql';

my $query = "query {
  flightRecorderSettings(vhost: 1)
  {oldObjectSampleEnabled, oldObjectSampleDurationMinutes}
}";
$query =~ s/\n/ /g;
my $json = sprintf('{"query" : "%s"}',$query);
my $req = HTTP::Request->new("POST", $uri );

$req->header("Authorization" => "Bearer $TOKEN");
$req->header("Content-Type" => "application/json");

$req->content( $json );

my $lwp = LWP::UserAgent->new;

my $result = $lwp->request( $req );

print $result->{"_content"},"\n";
Python
python
#! /usr/local/bin/python3

import requests

url = '$YOUR_LOGSCALE_URL/graphql'
mydata = r'''{"query" : "query {
  flightRecorderSettings(vhost: 1)
  {oldObjectSampleEnabled, oldObjectSampleDurationMinutes}
}"
}'''

resp = requests.post(url,
                     data = mydata,
                     headers = {
   "Authorization" : "Bearer $TOKEN",
   "Content-Type" : "application/json"
}
)

print(resp.text)
Node.js
javascript
const https = require('https');

const data = JSON.stringify(
    {"query" : "query {
  flightRecorderSettings(vhost: 1)
  {oldObjectSampleEnabled, oldObjectSampleDurationMinutes}
}"
}
);


const options = {
  hostname: '$YOUR_LOGSCALE_URL',
  path: 'graphql',
  port: 443,
  method: 'POST',
  headers: {
    'Content-Type': 'application/json',
    'Content-Length': data.length,
    Authorization: 'BEARER ' + process.env.TOKEN,
    'User-Agent': 'Node',
  },
};

const req = https.request(options, (res) => {
  let data = '';
  console.log(`statusCode: ${res.statusCode}`);

  res.on('data', (d) => {
    data += d;
  });
  res.on('end', () => {
    console.log(JSON.parse(data).data);
  });
});

req.on('error', (error) => {
  console.error(error);
});

req.write(data);
req.end();
Example Responses
Success (HTTP Response Code 200 OK)
json
{
  "data": {
    "flightRecorderSettings": {
      "oldObjectSampleEnabled": false,
      "oldObjectSampleDurationMinutes": 3600000
    }
  }
}

Returned Datatype

For the results, you can ask whether old object sampling is enabled and for how many minutes.

Table: FlightRecorderSettings

ParameterTypeRequiredDefaultStabilityDescription
Some arguments may be required, as indicated in the Required column. For return datatypes, this indicates that you must specify which fields you want returned in the results.
Table last updated: Sep 25, 2024
oldObjectSampleDurationMinuteslongyes PreviewThe duration an old object sampling will run before dumping results and restarting.
oldObjectSampleEnabledbooleanyes PreviewWhether an OldObjectSample is enabled.