API Stability Short-Term

The getLogCollectorDetails() GraphQL query to get the LogCollector's details.

There are a few other query fields related to LogCollector. You may find getLogCollectorDebugLogging(), logCollectorConfiguration(), and logCollectorInstallers() useful.

Syntax

graphql
getLogCollectorDetails(
      id: string,
      machineId: string,
      isLive: boolean
   ): LogCollectorDetails

There are no special input datatypes for this query field, although there is some input. For the id, you'd enter the unique identifier for the LogCollector. You'd enter the server's identifier for the machineId. The last input is to indicate whether to include results from a live log.

The results can include plenty of data, in particular, you can get a list of errors logged, and the source of log entries. See the table in the Return Datatype section further down this page for more parameters.

Example

Here's an example of how this query field might be used:

Raw
graphql
query {
  getLogCollectorDetails(machineId: "123")
     {id, hostname, ipAddress,
      configurations {id, name, assignment} }
}
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 {
  getLogCollectorDetails(machineId: \"123\")
     {id, hostname, ipAddress,
      configurations {id, name, assignment} }
}"
}
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 {
  getLogCollectorDetails(machineId: \"123\")
     {id, hostname, ipAddress,
      configurations {id, name, assignment} }
}"
}
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 { ^
  getLogCollectorDetails(machineId: \"123\") ^
     {id, hostname, ipAddress, ^
      configurations {id, name, assignment} } ^
}" ^
} '
Windows Powershell and curl
powershell
curl.exe -X POST 
    -H "Authorization: Bearer $TOKEN"
    -H "Content-Type: application/json"
    -d '{"query" : "query {
  getLogCollectorDetails(machineId: \"123\")
     {id, hostname, ipAddress,
      configurations {id, name, assignment} }
}"
}'
    "$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 {
  getLogCollectorDetails(machineId: \"123\")
     {id, hostname, ipAddress,
      configurations {id, name, assignment} }
}";
$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 {
  getLogCollectorDetails(machineId: \"123\")
     {id, hostname, ipAddress,
      configurations {id, name, assignment} }
}"
}'''

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 {
  getLogCollectorDetails(machineId: \"123\")
     {id, hostname, ipAddress,
      configurations {id, name, assignment} }
}"
}
);


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();

Returned Datatype

The returned datatype is used to get information on memory and disk usage, as well as the status of LogCollector, any errors logged, and the source of log entries. The table below list all of the parameters, including links to sub-parameters:

Table: LogCollectorDetails

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: Jun 23, 2025
configurations[LogCollectorConfigInfo]yes Short-TermThe log collector configurations. See LogCollectorConfigInfo.
cpuAverage5Minfloat  Short-TermThe CPU average for a five minute period.
diskMax5Minfloat  Short-TermThe disk maximum for a five minute period.
ephemeralTimeoutinteger  Short-TermThe ephemeral timeout in milliseconds.
errors[string]yes Short-TermThe errors.
hostnamestringyes Short-TermThe hostname.
idstringyes Short-TermThe unique identifier of the collector, if enrolled.
labels[LogCollectorLabel]yes Short-TermLog collector labels. See LogCollectorLabel.
ipAddressstring  Short-TermThe IP address.
ingestLast24Hlong  Short-TermThe ingest for the previous twenty-four hours.
lastActivitystringyes Short-TermThe last activity recorded.
logSourcesLogCollectorLogSourceyes Short-TermThe log collector's log source. See LogCollectorLogSource.
machineIdstringyes Short-TermThe log collector's machine unique identifier.
memoryMax5Minlong  Short-TermThe maximum memory usage for a five minute period.
statusLogCollectorStatusType  Short-TermThe status of the log collector. See LogCollectorStatusType.
systemstringyes Short-TermThe host system.
versionstringyes Short-TermThe version.