Open Telemetry Agent for Retrace by Stackify
5.1K
An Open Telemetry receiver of OTLP and OTLPHTTP streams of data that processes and submits telemetry data to Stackify Retrace.
docker pull stackify/retrace-otel-agent:latest
| Type | Route |
|---|---|
| OTLP (gRPC) | https://<container>:443 |
| OTLPHTTP (http) | http://<container>:80/v1/logs, http://<container>:80/v1/traces |
This is a list of available common environment variables.
NOTE:
__double underscores in environment variables are interpreted as a:when matching environment variables to json settings.
| Key | Valid Values | Usage |
|---|---|---|
| RETRACE_ACTIVATIONKEY, RETRACE__ACTIVATIONKEY | string | Sets the tenant activation key |
| RETRACE_ENVIRONMENT, RETRACE__ENVIRONMENTNAME | string | Set the default environment for apps and the environment for the agent itself |
| RETRACE_HOSTTYPE | CONTAINER, AZURE ... | Sets the resource detector used for self monitoring of the agent, defaults to Container |
| Value | Description |
|---|---|
CONTAINER | (Default) Generic Container |
AZURE | Azure Deployment |
AWS_EC2 | Amazon EC2 Instance |
AWS_EBS | Amazon Elastic Beanstalk |
AWS_ECS | Amazon Elastic Container Services |
AWS_EKS | Amazon Elastic Kubernetes Services |
These environment variables control what logs are allowed to be sent to retrace. It is disabled by default.
| Key | Valid Values | Usage |
|---|---|---|
| RETRACE__ELM__FILTERENABLED | True, False | Sets whether filtering is enabled or not, defaults to False |
| RETRACE__ELM__LOGLEVELFILTER | TRACE, DEBUG, ... | Sets the minimum log level of logs that will be shipped to Retrace, defaults to TRACE |
/app/config/*.json : custom configuration json files. Application will attempt to add any json file mounted here to the application configuration./app/cache Application will store persistent cache in this directory. Mount here to preserve cache between container updates./app/diags Application will store generated diagnostics in this directory. Mount here to preserve diags between container updates./app/requests Application will store raw otlp request streams in this directory when debug logging is toggled. Mount here to make externally available.
Contents will be included in any generated diagnostics.| Check | Route |
|---|---|
| Startup | <container>:80/health/startup |
| Liveness | <container>:80/healthz |
| Ready | <container>:80/ready |
Local access is against port 80 http://<container>:80.
Local authentication to download diagnostics or view possible sensitive data is controlled through the Authentication configuration options and disabled by default.
Set Environment Variables
| Variable Name | Examples |
|---|---|
AGENT__LOCALAUTHENTICATION__MODE | Disabled, PasswordOnly, DomainEmailAndPassword |
AGENT__LOCALAUTHENTICATION__PASSWORD | mypasswordhere |
AGENT__LOCALAUTHENTICATION__DOMAIN | mydomain.com Do not insert the @ symbol |
attach json configuration file to /app/config/authentication.json
{
"Agent" : {
"LocalAuthentication" : {
"Mode": "Disabled|PasswordOnly|DomainEmailAndPassword|UserList", // Disabled by default
"Domain": "netreo.com", // checks that all emails used end in @netreo.com
"Password": "N3tre@Ot3!", // default password
"Users": {
"[email protected]" : "***password***",
"[email protected]" : "***password***",
"[email protected]" : "***password***",
"[email protected]" : "***password***"
}
}
}
}
Local authenticated access is Disabled by default.
| Setting | Description |
|---|---|
Disabled | (Default) no authenticated access. |
PasswordOnly | will accept any email address. |
DomainNameAndPassword | will accept any email ending in that domain with the valid password. |
UserList | will only accept email and password combinations defined in the Users list. |
docker-compose.yml
version: '3.8'
services:
# Retrace Otel Appliance
retrace:
image: stackify/retrace-otel-agent:latest
ports:
- "4080:80"
- "4443:443"
environment:
- RETRACE_ACTIVATIONKEY=<Activation Key>
- RETRACE_ENVIRONMENT=<My Environment Name>
- AGENT__LOCALAUTHENTICATION__MODE=PasswordOnly
- AGENT__LOCALAUTHENTICATION__PASSWORD=********
# Otel Collector
otelcol:
image: otel/opentelemetry-collector-contrib:latest
volumes:
- ./collector-gateway.yml:/etc/collector-gateway.yml
command: [ "--config=/etc/collector-gateway.yml" ]
ports:
- "4317:4317" # OTLP gRPC receiver
- "4318:4318" # OTLP HTTP receiver
depends_on:
- retrace
collector-gateway.yml
receivers:
otlp:
protocols:
http:
endpoint: 0.0.0.0:4318
grpc:
endpoint: 0.0.0.0:4317
processors:
batch:
send_batch_size: 1000
send_batch_max_size: 2000
timeout: 1s
exporters:
logging:
loglevel: info
# otel agent
otlp/agent:
endpoint: host.docker.internal:4443
tls:
insecure: true
insecure_skip_verify: true
otlphttp/agent:
endpoint: http://host.docker.internal:4080
tls:
insecure_skip_verify: true
service:
pipelines:
traces:
receivers: [otlp]
processors: [batch]
exporters: [logging, otlp/agent, otlphttp/agent]
logs:
receivers: [otlp]
processors: [batch]
exporters: [logging, otlp/agent, otlphttp/agent]
Content type
Image
Digest
sha256:fc5cbbdfb…
Size
106.1 MB
Last updated
about 2 years ago
docker pull stackify/retrace-otel-agent