API Stability Short-Term

The searchLogCollectorGroups() GraphQL query will search log collector configurations.

Similar to this query is the query, searchLogCollectorConfigurations(). Related to both these queries are the getLogCollectorDetails() to get the LogCollector's details, logCollectorConfiguration() to get the configuration for a LogCollector, and logCollectorMergedConfiguration() to merge configurations.

There is also the createLogCollectorConfiguration(), deleteLogCollectorConfiguration(), and other related mutation fields.

Syntax

graphql
searchLogCollectorGroups(
      searchFilter: string,
      sortBy: FleetGroups__SortBy, 
      orderBy: OrderBy,
      skip: integer, 
      limit: integer, 
   ): SearchLogCollectorGroupsResultSet!

For the input, you can give a search string for the configuration name on which to filter results. You can sort results based on key elements of Fleet configurations. You can also indicate whether to order results in ascending or descending order. See the Given Datatypes section for more details.

You can opt to skip the first so many results with the skip parameter — it's default value is 0. Use the limit parameter to limit the number of results returned — its default is 50.

For the results, you can get the total results found and the LogCollector configurations for the group. See the Returned Datatype section further down this page.

Example

Below is an example of how this query field might be used:

Raw
graphql
query {
  searchLogCollectorGroups(sortBy: Name, orderBy: ASC)
     { totalResults, 
       results{id, name, collectorCount} }
}
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 {
  searchLogCollectorGroups(sortBy: Name, orderBy: ASC)
     { totalResults, 
       results{id, name, collectorCount} }
}"
}
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 {
  searchLogCollectorGroups(sortBy: Name, orderBy: ASC)
     { totalResults, 
       results{id, name, collectorCount} }
}"
}
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 { ^
  searchLogCollectorGroups(sortBy: Name, orderBy: ASC) ^
     { totalResults,  ^
       results{id, name, collectorCount} } ^
}" ^
} '
Windows Powershell and curl
powershell
curl.exe -X POST 
    -H "Authorization: Bearer $TOKEN"
    -H "Content-Type: application/json"
    -d '{"query" : "query {
  searchLogCollectorGroups(sortBy: Name, orderBy: ASC)
     { totalResults, 
       results{id, name, collectorCount} }
}"
}'
    "$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 {
  searchLogCollectorGroups(sortBy: Name, orderBy: ASC)
     { totalResults, 
       results{id, name, collectorCount} }
}";
$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 {
  searchLogCollectorGroups(sortBy: Name, orderBy: ASC)
     { totalResults, 
       results{id, name, collectorCount} }
}"
}'''

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 {
  searchLogCollectorGroups(sortBy: Name, orderBy: ASC)
     { totalResults, 
       results{id, name, collectorCount} }
}"
}
);


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

Given Datatypes

There are a couple of given datatypes for this query. One allows you to sort by the configuration name, or some other factor. The choices for this are listed in the table here:

Table: FleetGroups__SortBy

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: Oct 3, 2025
Collectors   Short-TermSort by Fleet groups by collectors.
Filter   Short-TermSort Fleet groups by filter.
Name  Short-TermSort the groups by name.
WantedVersion   Short-TermUse this to sort by version of LogScale.

The other input datatype is a simple one. You can return results based on whether they are in ascending or descending order, alphanumerically.

Table: OrderBy

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: Oct 10, 2025
ASC  Long-TermOrder results in ascending order (e.g., 0 to 9, A to Z).
DESC   Long-TermOrder results in descending order (e.g., 9 to 0, Z to A).

Returned Datatype

The returned datatype is used to get the total results found, and through a sub-parameter, you can get the LogCollector configurations. To see these choices, you'll have to click on the link below to the table for the datatype it uses.

Table: SearchLogCollectorGroupsResultSet

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: Oct 3, 2024
results[LogCollectorGroup]yes Short-TermThe paginated result set. See LogCollectorGroup.
totalResultsintegeryes Short-TermThe total number of matching results.