Skip to content

Commit 27aabd1

Browse files
authored
k8s operator doc tweaks (#62)
1 parent fb63391 commit 27aabd1

File tree

4 files changed

+18
-20
lines changed

4 files changed

+18
-20
lines changed

docs/kubernetes/operator/README.md

+3-3
Original file line numberDiff line numberDiff line change
@@ -120,9 +120,9 @@ Before installing the operator follow these actions:
120120
(TBD: details of API key permissions).
121121

122122
2. Install the following integrations in Kibana:
123-
- `System`
124-
- `Kubernetes`
125-
- `Kubernetes OpenTelemetry Assets`
123+
- `System`
124+
- `Kubernetes`
125+
- `Kubernetes OpenTelemetry Assets`
126126

127127
Notes:
128128
- When using the [Kibana onboarding UX](#deploying-components-using-kibana-onboarding-ux), the previous actions are automatically handled by Kibana.

docs/kubernetes/operator/instrumenting-applications.md

+3-3
Original file line numberDiff line numberDiff line change
@@ -104,7 +104,7 @@ spec:
104104
containers:
105105
- image: myapplication-image
106106
name: app
107-
...
107+
...
108108
```
109109

110110
where ``<LANGUAGE>`` is one of: `go` , `java`, `nodejs`, `python`, `dotnet`
@@ -130,7 +130,7 @@ After adding annotations to Pods or Namespaces, the applications must be restart
130130
kubectl rollout restart deployment/my-deployment
131131
```
132132

133-
In case you have multiple Instrumentation objects with different settings or images, ensure you point your Pods to the the desired `Instrumentation` objects in the annotations.
133+
In case you have multiple Instrumentation objects with different settings or images, ensure you point your Pods to the desired `Instrumentation` objects in the annotations.
134134

135135
The possible values for the annotation are detailed in the [Operator documentation](https://opentelemetry.io/docs/kubernetes/operator/automatic/#add-annotations-to-existing-deployments). For reference purposes, the values are:
136136

@@ -152,7 +152,7 @@ The following example creates a namespace with an annotation to instrument all P
152152
```
153153
kubectl create namespace java-apps
154154

155-
#Annotate app namespace
155+
# Annotate app namespace
156156
kubectl annotate namespace java-apps instrumentation.opentelemetry.io/inject-java="opentelemetry-operator-system/elastic-instrumentation"
157157

158158
# Run a java example application in the namespace

docs/kubernetes/operator/instrumenting-java.md

+7-7
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ This document focuses on instrumenting Java applications on Kubernetes, using th
1010

1111
The operator supports a configuration that installs [Java agent extensions](https://opentelemetry.io/docs/zero-code/java/agent/extensions/) in `Instrumentation` objects. The extension needs to be available in an image. Refer to [using extensions with the OpenTelemetry Java agent](https://www.elastic.co/observability-labs/blog/using-the-otel-operator-for-injecting-elastic-agents#using-an-extension-with-the-opentelemetry-java-agent) for an example of adding an extension to an agent.
1212

13-
## Instrument a Java app with EDOT Java SDK on Kubernetes
13+
## Instrument a Java app with EDOT Java SDK on Kubernetes
1414

1515
In this example, you'll learn how to:
1616

@@ -26,7 +26,7 @@ For this example, we assume the application you're instrumenting is a deployment
2626

2727
```bash
2828
$ kubectl get instrumentation -n opentelemetry-operator-system
29-
NAME AGE ENDPOINT
29+
NAME AGE ENDPOINT
3030
elastic-instrumentation 107s http://opentelemetry-kube-stack-daemon-collector.opentelemetry-operator-system.svc.cluster.local:4318
3131
```
3232
> [!NOTE]
@@ -62,7 +62,7 @@ elastic-instrumentation 107s http://opentelemetry-kube-stack-daemon-collecto
6262
Once the annotation has been set, restart the application to create new Pods and inject the instrumentation libraries:
6363

6464
```bash
65-
kubectl rollout restart deployment java-app -n java
65+
kubectl rollout restart deployment java-app -n java-ns
6666
```
6767

6868
4. Verify the [auto-instrumentation resources](./instrumenting-applications.md#how-auto-instrumentation-works) are injected in the Pod:
@@ -72,7 +72,7 @@ elastic-instrumentation 107s http://opentelemetry-kube-stack-daemon-collecto
7272
- There should be an init container named `opentelemetry-auto-instrumentation-java` in the Pod:
7373

7474
```bash
75-
$ kubectl describe pod java-app-8d84c47b8-8h5z2 -n java
75+
$ kubectl describe pod java-app-8d84c47b8-8h5z2 -n java-ns
7676
Name: java-app-8d84c47b8-8h5z2
7777
Namespace: java-ns
7878
...
@@ -101,7 +101,7 @@ elastic-instrumentation 107s http://opentelemetry-kube-stack-daemon-collecto
101101
/var/run/secrets/kubernetes.io/serviceaccount from kube-api-access-swhn5 (ro)
102102
```
103103

104-
- The main container of the deployment is using the SDK as `javaagent`:
104+
- The main container of the deployment is using the SDK as `javaagent`:
105105

106106
```bash
107107
...
@@ -125,7 +125,7 @@ elastic-instrumentation 107s http://opentelemetry-kube-stack-daemon-collecto
125125
/otel-auto-instrumentation-java from opentelemetry-auto-instrumentation-java (rw)
126126
Containers:
127127
java-app:
128-
...
128+
...
129129
Mounts:
130130
/otel-auto-instrumentation-java from opentelemetry-auto-instrumentation-java (rw)
131131
...
@@ -142,7 +142,7 @@ elastic-instrumentation 107s http://opentelemetry-kube-stack-daemon-collecto
142142
- Open **Observability** -> **Applications** -> **Service inventory**, and determine if:
143143
- The application appears in the list of services.
144144
- The application shows transactions and metrics.
145-
145+
146146
- For application container logs, open **Kibana Discover** and filter for your Pods' logs. In the provided example, we could filter for them with either of the following:
147147
- `k8s.deployment.name: "java-app"` (**adapt the query filter to your use case**)
148148
- `k8s.pod.name: java-app*` (**adapt the query filter to your use case**)

docs/kubernetes/operator/instrumenting-python.md

+5-7
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@ For this example, we assume the application you're instrumenting is a deployment
4040

4141
```bash
4242
$ kubectl get instrumentation -n opentelemetry-operator-system
43-
NAME AGE ENDPOINT
43+
NAME AGE ENDPOINT
4444
elastic-instrumentation 107s http://opentelemetry-kube-stack-daemon-collector.opentelemetry-operator-system.svc.cluster.local:4318
4545
```
4646
> [!NOTE]
@@ -73,7 +73,7 @@ elastic-instrumentation 107s http://opentelemetry-kube-stack-daemon-collecto
7373
Once the annotation has been set, restart the application to create new Pods and inject the instrumentation libraries:
7474

7575
```bash
76-
kubectl rollout restart deployment python-app -n python
76+
kubectl rollout restart deployment python-app -n python-ns
7777
```
7878

7979
4. Verify the [auto-instrumentation resources](./instrumenting-applications.md#how-auto-instrumentation-works) are injected in the Pod:
@@ -83,7 +83,7 @@ elastic-instrumentation 107s http://opentelemetry-kube-stack-daemon-collecto
8383
- There should be an init container named `opentelemetry-auto-instrumentation-python` in the Pod:
8484

8585
```bash
86-
$ kubectl describe pod python-app-8d84c47b8-8h5z2 -n python
86+
$ kubectl describe pod python-app-8d84c47b8-8h5z2 -n python-ns
8787
...
8888
...
8989
Init Containers:
@@ -131,7 +131,7 @@ elastic-instrumentation 107s http://opentelemetry-kube-stack-daemon-collecto
131131
/otel-auto-instrumentation-python from opentelemetry-auto-instrumentation-python (rw)
132132
Containers:
133133
python-app:
134-
...
134+
...
135135
Mounts:
136136
/otel-auto-instrumentation-python from opentelemetry-auto-instrumentation-python (rw)
137137
...
@@ -143,15 +143,13 @@ elastic-instrumentation 107s http://opentelemetry-kube-stack-daemon-collecto
143143

144144
Ensure the environment variable `OTEL_EXPORTER_OTLP_ENDPOINT` points to a valid endpoint and there's network communication between the Pod and the endpoint.
145145

146-
5. Confirm data is flowing through in **Kibana**:
147-
148146
5. Confirm data is flowing to **Kibana**:
149147

150148
- Open **Observability** -> **Applications** -> **Service inventory**, and determine if:
151149
- The application appears in the list of services.
152150
- The application shows transactions and metrics.
153151
- If [python logs instrumentation](https://opentelemetry.io/docs/kubernetes/operator/automatic/#auto-instrumenting-python-logs) is enabled, the application logs should appear in the Logs tab.
154-
152+
155153
- For application container logs, open **Kibana Discover** and filter for your Pods' logs. In the provided example, we could filter for them with either of the following:
156154
- `k8s.deployment.name: "python-app"` (**adapt the query filter to your use case**)
157155
- `k8s.pod.name: python-app*` (**adapt the query filter to your use case**)

0 commit comments

Comments
 (0)