# Logging options

DecisionRules has a simple and technology-independent logging system that logs simply to STDOUT. You can still process this standard output in all modern logging add-ons that you use in your infrastructure.

### How to change logger type&#x20;

The type of logger that is going to be chosen is decided by environment variable. This variable  called `LOGGER_TYPE` takes a string as a parameter with name of the logger you desire to use.

```
LOGGER_TYPE=JSON or STRING
```

### Types

#### JSON

This logger outputs data in JSON structure consisting of:&#x20;

* timestamp&#x20;
* severity
* message

Resulting into following object:

```json
{
 "timestamp":"2021-05-24 17:13:04.744+02:00",
 "severity":"INFO",
 "message":"System listening on port TCP 8080"
}
```

#### STRING

Outputs data a string format that consist of:

* timestamp&#x20;
* severity
* message

Data are always in format `[YYYY-MM-DDTHH:mm:ss.sssZ] <SEVERITY> MESSAGE`

Note that the message does not necessarily need to end with `\n`

Example output for this logger is:

```
[2023-02-02T08:51:39.743Z] <INFO> DecisionRules server listening on the port 8080
```


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.decisionrules.io/doc/v1/on-premise-docker/logging-options.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
