Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 0 additions & 3 deletions .ddev/ci/scripts/sqlserver/linux/55_install_odbc.sh
Original file line number Diff line number Diff line change
Expand Up @@ -6,9 +6,6 @@ sudo apt-get update
sudo apt-get install -y --no-install-recommends tdsodbc unixodbc-dev

# Install the Microsoft ODBC driver for SQL Server (Linux)
curl https://packages.microsoft.com/keys/microsoft.asc | sudo tee /etc/apt/trusted.gpg.d/microsoft.asc
curl https://packages.microsoft.com/config/ubuntu/$(lsb_release -rs)/prod.list | sudo tee /etc/apt/sources.list.d/mssql-release.list
sudo apt-get update
sudo ACCEPT_EULA=Y apt-get install -y msodbcsql18=18.3.3.1-1

set +ex
69 changes: 41 additions & 28 deletions eks_fargate/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -885,10 +885,10 @@ spec:

Monitor EKS Fargate logs using the Datadog Agent to collect logs from the kubelet and ship them to Datadog.

1. The most convenient way to enable native kubelet logging is through the Cluster Agent's Admission Controller sidecar injection feature. When configured, all subsequent injected Agent containers automatically have kubelet logging enabled. This feature can also be configured manually in your Application's manifest.
1. The most convenient way to enable native kubelet logging is through the Cluster Agent's Admission Controller sidecar injection feature. When configured, all subsequent injected Agent containers automatically have kubelet logging enabled. This requires Cluster Agent `7.68.0` or above. This feature can also be configured manually in your Application's manifest.

<!-- xxx tabs xxx -->
<!-- xxx tab "Enable Logging - Datdog Operator" xxx -->
<!-- xxx tab "Admission Controller - Datadog Operator" xxx -->

Set the `DD_ADMISSION_CONTROLLER_AGENT_SIDECAR_KUBELET_API_LOGGING_ENABLED` Cluster Agent environment variable to `true`, so newly injected Agent containers will have kubelet logging enabled.

Expand All @@ -899,27 +899,36 @@ Monitor EKS Fargate logs using the Datadog Agent to collect logs from the kubele
name: datadog
namespace: datadog
spec:
overrides:
features:
admissionController:
agentSidecarInjection:
enabled: true
provider: fargate
override:
clusterAgent:
env:
- name: DD_ADMISSION_CONTROLLER_AGENT_SIDECAR_KUBELET_API_LOGGING_ENABLED
value: "true"
```

<!-- xxz tab xxx -->
<!-- xxx tab "Enable Logging - Helm" xxx -->
<!-- xxx tab "Admission Controller - Helm" xxx -->

Set the `DD_ADMISSION_CONTROLLER_AGENT_SIDECAR_KUBELET_API_LOGGING_ENABLED` Cluster Agent environment variable to `true`, so newly injected Agent containers will have kubelet logging enabled.

```yaml
clusterAgent:
admissionController:
agentSidecarInjection:
enabled: true
provider: fargate
env:
- name: DD_ADMISSION_CONTROLLER_AGENT_SIDECAR_KUBELET_API_LOGGING_ENABLED
value: true
```

<!-- xxz tab xxx -->
<!-- xxx tab "Enable Logging - Manual" xxx -->
<!-- xxx tab "Manual" xxx -->

To enable Agent logging manually, you must:
1. Attach an [emptyDir][29] volume to your pod and mount it inside the Agent container. This prevents duplicate logs should the Agent container restart.
Expand All @@ -940,7 +949,10 @@ Monitor EKS Fargate logs using the Datadog Agent to collect logs from the kubele
- name: agent-option
emptyDir: {}
containers:
#(...)
# Your original container
- name: "<CONTAINER_NAME>"
image: "<CONTAINER_IMAGE>"

# Running the Agent as a sidecar
- name: datadog-agent
image: gcr.io/datadoghq/agent:7
Expand Down Expand Up @@ -969,10 +981,10 @@ Monitor EKS Fargate logs using the Datadog Agent to collect logs from the kubele
<!-- xxz tab xxx -->
<!-- xxz tabs xxx -->

2. You can configure the injected Agents to automatically collect logs for all containers by enabling `CONTAINER_COLLECT_ALL`. Alternatively, logs can be filtered through the standard Kubernetes [Autodiscovery annotations](https://docs.datadoghq.com/containers/kubernetes/log/?tab=helm#autodiscovery-annotations).
2. You can configure the Agent sidecar to automatically collect logs for all of the containers in its pod by enabling `DD_LOGS_CONFIG_CONTAINER_COLLECT_ALL`. Alternatively, the log integration can be setup per container with the standard Kubernetes [Autodiscovery annotations][30].

<!-- xxx tabs xxx -->
<!-- xxx tab "Configure Logging - Datdog Operator" xxx -->
<!-- xxx tab "Admission Controller - Datadog Operator" xxx -->

```yaml
#(...)
Expand All @@ -990,7 +1002,7 @@ Monitor EKS Fargate logs using the Datadog Agent to collect logs from the kubele
```

<!-- xxz tab xxx -->
<!-- xxx tab "Configure Logging - Helm" xxx -->
<!-- xxx tab "Admission Controller - Helm" xxx -->

```yaml
clusterAgent:
Expand All @@ -1005,7 +1017,7 @@ Monitor EKS Fargate logs using the Datadog Agent to collect logs from the kubele
```

<!-- xxz tab xxx -->
<!-- xxx tab "Configure Logging - Manual" xxx -->
<!-- xxx tab "Manual" xxx -->

```yaml
apiVersion: apps/v1
Expand All @@ -1028,7 +1040,7 @@ Monitor EKS Fargate logs using the Datadog Agent to collect logs from the kubele
- name: DD_LOGS_CONFIG_CONTAINER_COLLECT_ALL
value: "true"
#(...)
```
```

<!-- xxz tab xxx -->
<!-- xxz tabs xxx -->
Expand All @@ -1039,22 +1051,22 @@ Monitor EKS Fargate logs by using [Fluent Bit][14] to route EKS logs to CloudWat

1. To configure Fluent Bit to send logs to CloudWatch, create a Kubernetes ConfigMap that specifies CloudWatch Logs as its output. The ConfigMap specifies the log group, region, prefix string, and whether to automatically create the log group.

```yaml
kind: ConfigMap
apiVersion: v1
metadata:
name: aws-logging
namespace: aws-observability
data:
output.conf: |
[OUTPUT]
Name cloudwatch_logs
Match *
region us-east-1
log_group_name awslogs-https
log_stream_prefix awslogs-firelens-example
auto_create_group true
```
```yaml
kind: ConfigMap
apiVersion: v1
metadata:
name: aws-logging
namespace: aws-observability
data:
output.conf: |
[OUTPUT]
Name cloudwatch_logs
Match *
region us-east-1
log_group_name awslogs-https
log_stream_prefix awslogs-firelens-example
auto_create_group true
```
2. Use the [Datadog Forwarder][15] to collect logs from CloudWatch and send them to Datadog.

## Trace collection
Expand Down Expand Up @@ -1258,4 +1270,5 @@ Additional helpful documentation, links, and articles:
[26]: https://kubernetes.io/docs/concepts/configuration/secret/
[27]: https://helm.sh/docs/intro/install/
[28]: https://docs.datadoghq.com/tracing/trace_collection/proxy_setup/apigateway
[29]: https://kubernetes.io/docs/concepts/storage/volumes/#emptydir
[29]: https://kubernetes.io/docs/concepts/storage/volumes/#emptydir
[30]: https://docs.datadoghq.com/containers/kubernetes/log/?tab=helm#autodiscovery-annotations
Loading