{ "type": "object", "properties": { "configFile": { "type": "string", "minLength": 1, "description": "Path to the JSON configuration file. If provided, all listed options will be read from this file instead" }, "from": { "type": "string", "format": "date-time", "description": "Represents the starting timestamp from which to query the logs. Defaults to (now OR \"to\" field) - 1 hour" }, "to": { "type": "string", "format": "date-time", "description": "Represents the ending timestamp until which the logs will be queried. Defaults to now" }, "clearOutputDir": { "type": "boolean", "default": false, "description": "If true, empties the specified output directory without prompting for confirmation" }, "outputFolder": { "type": "string", "minLength": 1, "default": "output", "description": "Path to a folder that will contain subfolders for separate query downloads" }, "outputName": { "type": "string", "minLength": 1, "default": "download", "description": "Name of the folder that will contain the downloaded files" }, "query": { "type": "string", "minLength": 1, "description": "A Loki query written in standard format." }, "lokiUrl": { "type": "string", "minLength": 1, "description": "Base URL of Loki API instance" }, "startFromOldest": { "type": "boolean", "default": false, "description": "If true, download logs in order from oldest to newest" }, "coolDown": { "type": ["number", "null"], "default": 5000, "description": "Time to wait between fetching the next batch of records from the Loki API" }, "totalRecordsLimit": { "type": "number", "minimum": 1, "description": "Limit on the total number of records to download" }, "fileRecordsLimit": { "type": "number", "minimum": 1, "description": "Limit on the number of records outputted to each file" }, "batchRecordsLimit": { "type": "number", "minimum": 1, "default": 2000, "description": "Limit on the number of records fetched from the Loki API in a single request" }, "promptToStart": { "type": "boolean", "default": true, "description": "Ask for confirmation before the download starts" }, "orgId": { "type": "string", "minLength": 1, "description": "Adds X-Scope-OrgID header to API requests for representing tenant ID" }, "headers": { "type": "array", "items": { "type": "string" }, "description": "Additional request headers that will be present in every Loki API request. Can be used to provide authorization header" }, "queryTags": { "type": "array", "items": { "type": "string" }, "description": "Adds X-Query-Tags header to API requests for tracking the query" }, "prettyLogs": { "type": "boolean", "default": true, "description": "Use to enable/disable progress logs with emojis" } }, "required": ["query", "lokiUrl"], "additionalProperties": false, "$schema": "http://json-schema.org/draft-07/schema#" }