Cluster API Logs

Cluster API documentation

Loggers

The loggers enable setting a log level per logger. The loggers are the name of the log element in the project. The log level influences the amount of information on a log. The log level can be debug, info, warning, error, fatal or panic.

GET /log/defaults

Get the default loggers configuration

Response JSON Object
  • [key] (string) – The logger level.

Example response:

{
  "leaf": "info"
}
POST /log/defaults/{loggerID}

Update the default logger

Parameters
  • loggerID – The logger ID

Request JSON Object
  • [key] (string) – The logger level.

Example query:

{
  "leaf": "info"
}
GET /log/allocs/{allocID}

Get the current allocation loggers configuration. An empty value means that the allocation is using the default value. An allocation is an instance of a task.

Parameters
  • allocID – The allocation ID

Response JSON Object
  • [key] (string) – The logger level.

Example response:

{
  "leaf": "info"
}
POST /log/allocs/{allocID}/{loggerID}

Set an allocation loggers configuration

Parameters
  • allocID – The allocation ID

  • loggerID – The logger ID

Request JSON Object
  • [key] (string) – The logger level.

Response JSON Object
  • [key] (string) – The logger level.

Example query:

{
  "leaf": "info"
}

Example response:

{
  "leaf": "info"
}

Logs

GET /log/logs

Get the logs

Response JSON Object
  • [] (object) –

  • [].id (string) – The name of the log.

  • [].fileName (string) – The file name. Ex: stderr, stdout.

  • [].group (string) – The log group.

  • [].job (string) – The log job.

  • [].logLevel (boolean) – If the logger support dynamic log level.

  • [].task (string) – The task.

Example response:

[
  {
    "id": "web",
    "fileName": "stdout",
    "group": "web",
    "job": "web",
    "logLevel": false,
    "task": "web"
  }
]
POST /log/logs

Set the logs

Request JSON Object
  • [] (object) –

  • [].id (string) – The name of the log.

  • [].fileName (string) – The file name. Ex: stderr, stdout.

  • [].group (string) – The log group.

  • [].job (string) – The log job.

  • [].logLevel (boolean) – If the logger support dynamic log level.

  • [].task (string) – The task.

Example query:

[
  {
    "id": "web",
    "fileName": "stdout",
    "group": "web",
    "job": "web",
    "logLevel": false,
    "task": "web"
  }
]
DELETE /log/logs

Delete all logs

POST /log/log/{logID}

Create a log

Parameters
  • logID – The log’s id

Request JSON Object
  • id (string) – The name of the log.

  • fileName (string) – The file name. Ex: stderr, stdout.

  • group (string) – The log group.

  • job (string) – The log job.

  • logLevel (boolean) – If the logger support dynamic log level.

  • task (string) – The task.

Example query:

{
  "id": "web",
  "fileName": "stdout",
  "group": "web",
  "job": "web",
  "logLevel": false,
  "task": "web"
}
PUT /log/log/{logID}

Update a log

Parameters
  • logID – The log’s id

Request JSON Object
  • id (string) – The name of the log.

  • fileName (string) – The file name. Ex: stderr, stdout.

  • group (string) – The log group.

  • job (string) – The log job.

  • logLevel (boolean) – If the logger support dynamic log level.

  • task (string) – The task.

Example query:

{
  "id": "web",
  "fileName": "stdout",
  "group": "web",
  "job": "web",
  "logLevel": false,
  "task": "web"
}
DELETE /log/log/{logID}

Delete a log

Parameters
  • logID – The log’s id

GET /log/meta/{logID}

Get the log’s metadata

Parameters
  • logID – undefined

Response JSON Object
  • [] (object) –

  • [].allocID (string) – The log allocation ID.

  • [].status (string) – The task status.

  • [].logLevel (boolean) – If the process supports log level or not.

  • [].jobName (string) – The job name.

  • [].taskName (string) – The task name.

  • [].fileName (string) – The file name.

  • [].createTime (string) – The creation time of the log.

Example response:

[
  {
    "allocID": "8e8c53da-b60f-c3c7-1d63-2243507fee1a",
    "status": "running",
    "logLevel": true,
    "jobName": "tutorial",
    "taskName": "tutorial",
    "fileName": "stderr",
    "createTime": 1549982869888
  }
]
GET /log/fs/{alloc}/{task}/{fs}

Get the log data

Parameters
  • alloc – The allocation ID

  • task – The task name

  • fs – The file system id. Either stdout or stderr

Query Parameters
  • origin – The origin of the log. start or end

  • offset – The offset from the origin

Response JSON Object
  • Offset (integer) – The offset from the origin.

  • Data (string) – The log data.

  • File (string) – The file.

  • FileEvent (string) –

Example response:

{
  "Offset": 0,
  "Data": "logData",
  "File": "",
  "FileEvent": ""
}
GET /log/output/{alloc}/{task}/{fs}

Get the log as text/plain

Parameters
  • alloc – The allocation ID

  • task – The task name

  • fs – The file system id. Either stdout or stderr

Query Parameters
  • origin – The origin of the log. start or end

  • offset – The offset from the origin

  • download – If the log must be displayed inline (default) or as attachment (if empty or true).