# Log Sources

It is essential to identify the origin of the logs before choosing the right approach to installing and configuring the [<mark style="color:blue;">Fluent Bit</mark>](https://docs.fluentbit.io/manual) agent. However, to provide convenient parsing and data labeling, IONOS Cloud accepts logs from the following four log sources: Kubernetes, Docker, Linux Systemd, and HTTP. The configuration of these log sources varies accordingly.

{% hint style="info" %}
**Note:** Technically, you can send logs with Fluent Bit from any source if the following communication protocols are supported: **TCP** and **HTTP**. The only convenient parsing currently offered is using the specified log sources.
{% endhint %}

## Kubernetes

This method lets you collect and ship your Kubernetes application's logs. [<mark style="color:blue;">Fluent Bit</mark>](https://docs.fluentbit.io/manual/installation/downloads/kubernetes) offers a wide range of information on how to set it up on your Kubernetes cluster. However, we also recommend you try our [<mark style="color:blue;">Kubernetes configuration examples</mark>](https://github.com/ionos-cloud/observability-services-user-documentation/tree/main/logging/examples/kubernetes) before configuring the log source.

## Docker

If you have a set of applications on Docker, we recommend trying our [<mark style="color:blue;">Docker configuration examples</mark>](https://github.com/ionos-cloud/observability-services-user-documentation/tree/main/logging/examples/docker). You can also find more information about Docker configuration on [<mark style="color:blue;">Fluent Bit's official website</mark>](https://docs.fluentbit.io/manual/installation/downloads/docker).

## Linux Systemd

To set up Fluent Bit on a Linux system with systemd or journals, you must install an appropriate package for your Linux distribution. For more information about how to accomplish it, see [<mark style="color:blue;">Fluent Bit's official website</mark>](https://docs.fluentbit.io/manual/installation/getting-started-with-fluent-bit). We also recommend you try our [<mark style="color:blue;">Linux systemd</mark>](https://github.com/ionos-cloud/observability-services-user-documentation/tree/main/logging/examples/systemd) sample configuration.

## HTTP

You can also send logs through the HTTP REST endpoint. You can transfer logs that are in JSON format only via the HTTP REST endpoint.

The following is an example:

```bash
curl --location \
--request POST 'https://12be6dbe134f-logs.3b0b424eb27f.logging.de-txl.ionos.com/myhttp' \
--header 'Content-Type: application/json' \
--header 'APIKEY: <KEY>' \
--data '{ 
           "status": "Ready",
           "ts": 1580306777.04728,
           "pod": {
                   "name": "Example Name",
                   "namespace": "data"
                  },
           "msg": "Pod status updated",
           "level": "error",
           "label_1": "test label"
           }'
```
