Summary

The addToLogCollectorConfigurationTest() mutation adds one or more Log Collectors to an active configuration test without interrupting it. Call this mutation after startLogCollectorConfigurationTest() to expand the set of collectors receiving the test configuration. The mutation returns the updated FleetConfigurationTest object, which reflects all collectors currently in the test.

Syntax

graphql
addToLogCollectorConfigurationTest(
      configId: String!,
      collectorIds: [String!]!
   ): FleetConfigurationTest!

Pass the configuration ID in configId and a list of Log Collector IDs in collectorIds. Both parameters are required. The mutation returns a non-null FleetConfigurationTest object representing the updated test state.

Example

Raw
graphql
mutation {
  addToLogCollectorConfigurationTest(
     configId: "cfg1", 
     collectorIds: ["abc123", "def456"] )
  { configId, collectorIds }
}
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" : "mutation {
  addToLogCollectorConfigurationTest(
     configId: \"cfg1\", 
     collectorIds: [\"abc123\", \"def456\"] )
  { configId, collectorIds }
}"
}
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" : "mutation {
  addToLogCollectorConfigurationTest(
     configId: \"cfg1\", 
     collectorIds: [\"abc123\", \"def456\"] )
  { configId, collectorIds }
}"
}
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" : "mutation { ^
  addToLogCollectorConfigurationTest( ^
     configId: \"cfg1\",  ^
     collectorIds: [\"abc123\", \"def456\"] ) ^
  { configId, collectorIds } ^
}" ^
} '
Windows Powershell and curl
powershell
curl.exe -X POST 
    -H "Authorization: Bearer $TOKEN"
    -H "Content-Type: application/json"
    -d '{"query" : "mutation {
  addToLogCollectorConfigurationTest(
     configId: \"cfg1\", 
     collectorIds: [\"abc123\", \"def456\"] )
  { configId, collectorIds }
}"
}'
    "$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 = "mutation {
  addToLogCollectorConfigurationTest(
     configId: \"cfg1\", 
     collectorIds: [\"abc123\", \"def456\"] )
  { configId, collectorIds }
}";
$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" : "mutation {
  addToLogCollectorConfigurationTest(
     configId: \"cfg1\", 
     collectorIds: [\"abc123\", \"def456\"] )
  { configId, collectorIds }
}"
}'''

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" : "mutation {
  addToLogCollectorConfigurationTest(
     configId: \"cfg1\", 
     collectorIds: [\"abc123\", \"def456\"] )
  { configId, collectorIds }
}"
}
);


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": {
    "addToLogCollectorConfigurationTest": {
      "configId": "cfg1",
      "collectorIds": [ "abc123", "def456"]
    }
  }
}

Input Parameters

Both input parameters are required. Provide the configuration ID and the list of Log Collector IDs to add to the test.

Table: Input Parameters and Datatypes

Parameter Type Required Default Description
This table contains all input parameters for this mutation.
configId String yes   The unique identifier of the Log Collector configuration under test.
collectorIds [String!] yes   A list of unique Log Collector IDs to add to the configuration test. Each value must be a non-null string.

Returned Values

The mutation returns a non-null FleetConfigurationTest object. This object includes the complete list of Log Collector IDs in the test. Check the returned list to confirm which collectors are currently active in the test.

Table: FleetConfigurationTest Datatype

ParameterTypeRequiredDefaultStabilityAvailabilityDescription
collectorIdsStringyes Short-Term The Log Collector unique identifiers.
configIdStringyes Short-Term The configuration identifier.