Skip to content

Commit

Permalink
Update docs
Browse files Browse the repository at this point in the history
  • Loading branch information
igor-vovk committed Aug 18, 2024
1 parent b36e4c4 commit 8dc8421
Show file tree
Hide file tree
Showing 2 changed files with 18 additions and 13 deletions.
2 changes: 2 additions & 0 deletions .github/workflows/release.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -33,5 +33,7 @@ jobs:

- name: Run chart-releaser
uses: helm/[email protected]
with:
skip_existing: true
env:
CR_TOKEN: "${{ secrets.GITHUB_TOKEN }}"
29 changes: 16 additions & 13 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,19 +1,30 @@
# Kubernetes ➡️ Datadog logs sender

Helm chart to set up sending logs from a Kubernetes cluster to Datadog. [Vector](https://vector.dev) is used under the
hood.
Helm chart to set up forwarding logs from a Kubernetes cluster to Datadog.
[Vector](https://vector.dev) is used under the hood.

This is an example of how to use Vector to send logs to Datadog author couldn't find when
he was trying to set it up.
It's also the author's exercise to learn writing Helm charts.

It is based on Axiom's [instruction](https://axiom.co/docs/send-data/kubernetes) on setting up Vector.
It is based on instructions published on Axiom [website](https://axiom.co/docs/send-data/kubernetes) on setting up
Vector.

## Features

* Lightweight and fast.
* Supports excluding logs from log collection by service name and log level.

## Architecture

![Architecture](./docs/architecture-diagram.svg)

Sender-Aggregator pattern is used to send logs to Datadog:

* Senders are deployed on each node in the cluster. They collect logs from the node, process and filter them, and then
send logs to the aggregator.
* Aggregator collects logs from all senders and then sends them to Datadog.

## Installation

### Helm
Expand All @@ -33,7 +44,9 @@ It is based on Axiom's [instruction](https://axiom.co/docs/send-data/kubernetes)
```

### ArgoCD Application

Example of ArgoCD Application manifest:

```yaml
apiVersion: argoproj.io/v1alpha1
kind: Application
Expand All @@ -58,16 +71,6 @@ spec:
selfHeal: true
```

## Architecture

![Architecture](./docs/architecture-diagram.svg)

Sender-Aggregator pattern is used to send logs to Datadog:

* Senders are deployed on each node in the cluster. They collect logs from the node, process and filter them, and then
send logs to the aggregator.
* Aggregator collects logs from all senders and then sends them to Datadog.

## Points of Improvement

* Consider having thin senders and doing parsing and filtering in the aggregator instance.
Expand Down

0 comments on commit 8dc8421

Please sign in to comment.