API Stability Short-Term

The getLogCollectorDetails() GraphQL query to get the LogCollector's details. This is a preview, though, and subject to change.

Syntax

Below is the syntax for getLogCollectorDetails():

graphql
getLogCollectorDetails(
      machineId: string!
   ): LogCollectorDetails

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 $INGEST_TOKEN = "TOKEN";

my $uri = '$YOUR_LOGSCALE_URL/graphql';

my $json = '{"query" : "query {
  getLogCollectorDetails(machineId: \"123\")
     {id, hostname, ipAddress,
      configurations {id, name, assignment} }
}"
}';
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/graphql',
  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 Datatypes

For LogCollectorDetails, there are a couple possible values returned, which are listed below.

Table: LogCollectorDetails

ParameterTypeRequiredDefaultStabilityDescription
Some arguments may be required, as indicated in the Required column. For some fields, this column indicates that a result will always be returned for this column.
Table last updated: Sep 26, 2024
configurations[LogCollectorConfigInfo]yes  The log collector configurations. See LogCollectorConfigInfo.
cpuAverage5Minfloat   The CPU average for a five minute period.
diskMax5Minfloat   The disk maximum for a five minute period.
ephemeralTimeoutinteger   The ephemeral timeout in milliseconds.
errors[string]yes  The errors.
hostnamestringyes  The hostname.
idstringyes  The unique identifier of the collector, if enrolled.
ipAddressstring   The IP address.
lastActivitystringyes  The last activity recorded.
logSourcesLogCollectorLogSourceyes  The log collector's log source. See LogCollectorLogSource.
machineIdstringyes  The log collector's machine ID.
memoryMax5Minlong   The maximum memory useage for a five minute period.
statusLogCollectorStatusType   The status of the log collector. See LogCollectorStatusType.
systemstringyes  The host system.
versionstringyes  The version.