# Logging basics

Every workflow or pipeline you execute through Hop Gui or Hop Run and a lot of the other tools generate logging as logging text in the most obvious form.

Hop allows data developers to influence how, where and at which level of detail logging information is generated and where it is written to.

### Levels

#### Descriptions

The amount of text logging generated depends on the logging level which is used when executing a workflow or pipeline:

| Level    | Description                                                                 |
| -------- | --------------------------------------------------------------------------- |
| NOTHING  | No logging is generated                                                     |
| ERROR    | Only errors are reported                                                    |
| MINIMAL  | The bare essential, nothing more                                            |
| BASIC    | The standard logging which tries to be concise and informative              |
| DETAILED | More logging information about what happens behind the scenes is reported   |
| DEBUG    | A lot of information is produced, often with specific values being reported |
| ROWLEVEL | Values are reported on an individual row level                              |

#### Runtime levels

The logging level can be specified when executing using hop-run or in the Hop GUI. It is also possible to use the debug plugin to set custom logging levels on a transform:

![Transform action - show logging options](https://4045370068-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FyxV8XEI7kgTw22LXcPL6%2Fuploads%2Fgit-blob-fea5799eeac0219266040d83f7d1c060adec0ae6%2Fcustom-logging-actions.png?alt=media)

You can set a custom logging level for this particular transform and only for certain rows of data:

![Setting a custom transform logging level](https://4045370068-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FyxV8XEI7kgTw22LXcPL6%2Fuploads%2Fgit-blob-694f2259a8b8467662ce6b76ce79092aa8c4aae9%2Fcustom-transform-logging-level.png?alt=media)

You can do likewise for a workflow:

![Setting a custom action logging level](https://4045370068-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FyxV8XEI7kgTw22LXcPL6%2Fuploads%2Fgit-blob-95f25749f8b525dcc060b258b8991d155e6f124a%2Fcustom-action-logging-level.png?alt=media)

### Hop GUI logging

The logging file of the Hop GUI is saved in the `audit/` folder (or in the folder set by `HOP_AUDIT_FOLDER`) in the `hopui.log` file.

### Tools logging

If you want to send logging of tools like hop-run or hop-conf to a logging file you need to do this simply by piping the text stream to a file.

### Logging plugins

#### Actions

**Write to log**

The Write to log acction writes a specific string to the Hop logging system.

Check the [Write To Log](https://docs.primeur.com/data-shaper-1.20/knowing-the-data-shaper-designer/workflows/actions/writetolog) page for more details.

#### Metadata Types

**Pipeline Log**

A pipeline log allows to log the activity of a pipeline with another pipeline.

Check the [pipeline log](https://docs.primeur.com/data-shaper-1.20/knowing-the-data-shaper-designer/index-2/pipeline-log) and [logging reflection](https://docs.primeur.com/data-shaper-1.20/knowing-the-data-shaper-designer/logging-basics/logging-reflection) pages for more details.

**Workflow Log**

Allows to log the activity of a workflow with a pipeline.

Check the [workflow log](https://docs.primeur.com/data-shaper-1.20/knowing-the-data-shaper-designer/index-2/workflow-log) and [logging reflection](https://docs.primeur.com/data-shaper-1.20/knowing-the-data-shaper-designer/logging-basics/logging-reflection) pages for more details.

#### Perspectives

**Neo4j**

Hop can write execution logs for workflows and pipelines to a Neo4j database.

Check [Neo4j Perspective](https://docs.primeur.com/data-shaper-1.20/knowing-the-data-shaper-designer/index/perspectives/perspective-neo4j) page for more details.

#### Transforms

**Write to Log**

This transform writes information to the Hop logging system.

Check the [Write To Log](https://docs.primeur.com/data-shaper-1.20/knowing-the-data-shaper-designer/pipelines/transforms/writetolog) page for more details.


---

# 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.primeur.com/data-shaper-1.20/knowing-the-data-shaper-designer/logging-basics.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.
