Skip to content
Draft
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
4 changes: 3 additions & 1 deletion .github/workflows/component_onhost_e2e.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,7 @@ permissions:
env:
HOST_E2E_INFRA_AGENT_VERSION: "1.77.1"
HOST_E2E_NRDOT_VERSION: "1.17.0"
HOST_E2E_EBPF_AGENT_VERSION: "1.4.3"

jobs:
build-packages:
Expand Down Expand Up @@ -81,7 +82,8 @@ jobs:
--agent-control-version "0.900.${{ github.run_id }}" \
--recipes-repo-branch "main" \
--infra-agent-version "${{ env.HOST_E2E_INFRA_AGENT_VERSION }}" \
--nrdot-version "${{ env.HOST_E2E_NRDOT_VERSION }}"
--nrdot-version "${{ env.HOST_E2E_NRDOT_VERSION }}" \
--ebpf-agent-version "${{ env.HOST_E2E_EBPF_AGENT_VERSION }}"

- name: Report test result to New Relic
if: always()
Expand Down
4 changes: 3 additions & 1 deletion .github/workflows/on_demand_staging_e2e.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@ permissions:
env:
HOST_E2E_INFRA_AGENT_VERSION: "1.72.4"
HOST_E2E_NRDOT_VERSION: "1.8.0"
HOST_E2E_EBPF_AGENT_VERSION: "1.4.3"

jobs:
build-packages:
Expand Down Expand Up @@ -64,7 +65,8 @@ jobs:
--agent-control-version "0.600.${{ github.run_id }}" \
--recipes-repo-branch "main" \
--infra-agent-version "${{ env.HOST_E2E_INFRA_AGENT_VERSION }}" \
--nrdot-version "${{ env.HOST_E2E_NRDOT_VERSION }}"
--nrdot-version "${{ env.HOST_E2E_NRDOT_VERSION }}" \
--ebpf-agent-version "${{ env.HOST_E2E_EBPF_AGENT_VERSION }}"

- name: Report test result to New Relic
if: always()
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,10 +11,10 @@ variables:
type: string
required: true
OTLP_ENDPOINT:
description: "Endpoint to export data to Newrelic."
description: "Endpoint to export data to New Relic. US: otlp.nr-data.net:443, EU: otlp.eu01.nr-data.net:443, Staging: staging-otlp.nr-data.net:443."
type: string
required: false
default: otlp.nr-data.net:4317
default: otlp.nr-data.net:443
LOG_LEVEL:
description: "To configure the log level in increasing order of verboseness."
type: string
Expand Down Expand Up @@ -195,6 +195,36 @@ variables:
type: string
required: false
default: ""
PROXY_URL:
description: "Full proxy URL for exporting data to New Relic (format '<scheme>://<user>:<pass>@<host>:<port>'). Empty = no proxy. Maps to NEW_RELIC_PROXY_URL."
type: string
required: false
default: ""
LABELS:
description: "Custom labels applied to all entities. Format 'key1:value1;key2:value2'. Maps to NEW_RELIC_LABELS."
type: string
required: false
default: ""
REPORT_APM_DATA:
description: "eBPF APM data reporting: 'true' (always), 'false' (never), or 'auto' (only if no APM/OTel agent detected)."
type: string
required: false
default: "true"
REPORT_NETWORK_METRICS:
description: "Network metrics reporting: 'true', 'false', or 'auto'."
type: string
required: false
default: "true"
JVM_METRICS_REPORTING:
description: "Enable/disable JVM metrics collection and reporting."
type: string
required: false
default: "true"
REPORT_AI_METRICS:
description: "AI monitoring: 'true' (always), 'false' (never), or 'auto' (only if no APM/OTel agent detected)."
type: string
required: false
default: "false"
backoff_delay:
description: "seconds until next retry if agent fails to start"
type: string
Expand All @@ -205,55 +235,33 @@ variables:
type: bool
required: false
default: false
oci:
repository:
description: "Package repository name"
type: string
required: false
default: newrelic/ebpf-agent-artifacts
variants:
ac_config_field: "oci_repository_urls"
values: [ "newrelic/ebpf-agent-artifacts" ]
version:
description: "Agent version"
type: string
required: true
deployment:
enable_file_logging: ${nr-var:enable_file_logging}
packages:
ebpf-agent:
download:
oci:
repository: ${nr-var:oci.repository}
version: ${nr-var:version}
public_key_url: https://publickeys.newrelic.com/g/agent-control-oci/global/nrebpfagent/jwks.json
post_download_hook:
path: /bin/bash
args:
- post_download.sh
executables:
- id: nr-ebpf-agent-client
path: /usr/bin/nr-ebpf-agent-client
env:
NEW_RELIC_LICENSE_KEY: "${nr-env:NEW_RELIC_LICENSE_KEY}"
DEPLOYMENT_NAME: "${nr-var:config_agent.DEPLOYMENT_NAME}"
OTLP_ENDPOINT: "${nr-var:config_agent.OTLP_ENDPOINT}"
NEW_RELIC_LOG_LEVEL: "${nr-var:config_agent.LOG_LEVEL}"
NEW_RELIC_LOG_FILE_PATH: "${nr-var:config_agent.LOG_FILE_PATH}"
DROP_DATA_FOR_ENTITY: "${nr-var:config_agent.DROP_DATA_FOR_ENTITY}"
TLS_ENABLED: "${nr-var:config_agent.TLS_ENABLED}"
TLS_AUTOGENERATE_CERT_ENABLED: "${nr-var:config_agent.TLS_AUTOGENERATE_CERT_ENABLED}"
TLS_CERT_PATH: "${nr-var:config_agent.TLS_CERT_PATH}"
TLS_CERT_FILE: "${nr-var:config_agent.TLS_CERT_FILE}"
TLS_KEY_FILE: "${nr-var:config_agent.TLS_KEY_FILE}"
TLS_CA_FILE: "${nr-var:config_agent.TLS_CA_FILE}"
TABLE_STORE_DATA_LIMIT_MB: "${nr-var:config_agent.TABLE_STORE_DATA_LIMIT_MB}"
PROTOCOLS_HTTP_ENABLED: "${nr-var:config_agent.PROTOCOLS_HTTP_ENABLED}"
PROTOCOLS_HTTP_SPANS_ENABLED: "${nr-var:config_agent.PROTOCOLS_HTTP_SPANS_ENABLED}"
PROTOCOLS_HTTP_SPANS_SAMPLING_LATENCY: "${nr-var:config_agent.PROTOCOLS_HTTP_SPANS_SAMPLING_LATENCY}"
PROTOCOLS_HTTP_SPANS_SAMPLING_ERROR_RATE: "${nr-var:config_agent.PROTOCOLS_HTTP_SPANS_SAMPLING_ERROR_RATE}"
PROTOCOLS_MYSQL_ENABLED: "${nr-var:config_agent.PROTOCOLS_MYSQL_ENABLED}"
PROTOCOLS_MYSQL_SPANS_ENABLED: "${nr-var:config_agent.PROTOCOLS_MYSQL_SPANS_ENABLED}"
PROTOCOLS_MYSQL_SPANS_SAMPLING_LATENCY: "${nr-var:config_agent.PROTOCOLS_MYSQL_SPANS_SAMPLING_LATENCY}"
PROTOCOLS_PGSQL_ENABLED: "${nr-var:config_agent.PROTOCOLS_PGSQL_ENABLED}"
PROTOCOLS_PGSQL_SPANS_ENABLED: "${nr-var:config_agent.PROTOCOLS_PGSQL_SPANS_ENABLED}"
PROTOCOLS_PGSQL_SPANS_SAMPLING_LATENCY: "${nr-var:config_agent.PROTOCOLS_PGSQL_SPANS_SAMPLING_LATENCY}"
PROTOCOLS_CASS_ENABLED: "${nr-var:config_agent.PROTOCOLS_CASS_ENABLED}"
PROTOCOLS_CASS_SPANS_ENABLED: "${nr-var:config_agent.PROTOCOLS_CASS_SPANS_ENABLED}"
PROTOCOLS_CASS_SPANS_SAMPLING_LATENCY: "${nr-var:config_agent.PROTOCOLS_CASS_SPANS_SAMPLING_LATENCY}"
PROTOCOLS_REDIS_ENABLED: "${nr-var:config_agent.PROTOCOLS_REDIS_ENABLED}"
PROTOCOLS_REDIS_SPANS_ENABLED: "${nr-var:config_agent.PROTOCOLS_REDIS_SPANS_ENABLED}"
PROTOCOLS_REDIS_SPANS_SAMPLING_LATENCY: "${nr-var:config_agent.PROTOCOLS_REDIS_SPANS_SAMPLING_LATENCY}"
PROTOCOLS_MONGODB_ENABLED: "${nr-var:config_agent.PROTOCOLS_MONGODB_ENABLED}"
PROTOCOLS_MONGODB_SPANS_ENABLED: "${nr-var:config_agent.PROTOCOLS_MONGODB_SPANS_ENABLED}"
PROTOCOLS_MONGODB_SPANS_SAMPLING_LATENCY: "${nr-var:config_agent.PROTOCOLS_MONGODB_SPANS_SAMPLING_LATENCY}"
PROTOCOLS_KAFKA_SPANS_ENABLED: "${nr-var:config_agent.PROTOCOLS_KAFKA_SPANS_ENABLED}"
PROTOCOLS_KAFKA_SPANS_SAMPLING_LATENCY: "${nr-var:config_agent.PROTOCOLS_KAFKA_SPANS_SAMPLING_LATENCY}"
PROTOCOLS_AMQP_SPANS_ENABLED: "${nr-var:config_agent.PROTOCOLS_AMQP_SPANS_ENABLED}"
PROTOCOLS_AMQP_SPANS_SAMPLING_LATENCY: "${nr-var:config_agent.PROTOCOLS_AMQP_SPANS_SAMPLING_LATENCY}"
PROTOCOLS_DNS_ENABLED: "${nr-var:config_agent.PROTOCOLS_DNS_ENABLED}"
PROTOCOLS_DNS_SPANS_ENABLED: "${nr-var:config_agent.PROTOCOLS_DNS_SPANS_ENABLED}"
PROTOCOLS_DNS_SPANS_SAMPLING_LATENCY: "${nr-var:config_agent.PROTOCOLS_DNS_SPANS_SAMPLING_LATENCY}"
restart_policy:
backoff_strategy:
type: fixed
backoff_delay: ${nr-var:backoff_delay}
- id: nr-ebpf-agent
path: /usr/bin/nr-ebpf-agent
env:
Expand Down Expand Up @@ -296,6 +304,12 @@ deployment:
PROTOCOLS_DNS_ENABLED: "${nr-var:config_agent.PROTOCOLS_DNS_ENABLED}"
PROTOCOLS_DNS_SPANS_ENABLED: "${nr-var:config_agent.PROTOCOLS_DNS_SPANS_ENABLED}"
PROTOCOLS_DNS_SPANS_SAMPLING_LATENCY: "${nr-var:config_agent.PROTOCOLS_DNS_SPANS_SAMPLING_LATENCY}"
NEW_RELIC_PROXY_URL: "${nr-var:config_agent.PROXY_URL}"
NEW_RELIC_LABELS: "${nr-var:config_agent.LABELS}"
REPORT_APM_DATA: "${nr-var:config_agent.REPORT_APM_DATA}"
REPORT_NETWORK_METRICS: "${nr-var:config_agent.REPORT_NETWORK_METRICS}"
JVM_METRICS_REPORTING: "${nr-var:config_agent.JVM_METRICS_REPORTING}"
REPORT_AI_METRICS: "${nr-var:config_agent.REPORT_AI_METRICS}"
restart_policy:
backoff_strategy:
type: fixed
Expand Down
4 changes: 4 additions & 0 deletions test/e2e-runner/src/common.rs
Original file line number Diff line number Diff line change
Expand Up @@ -89,6 +89,10 @@ pub struct InstallationArgs {
/// Version of the NRDot OCI image to use in tests
#[arg(long)]
pub nrdot_version: Option<String>,

/// Version of the eBPF agent OCI image to use in tests
#[arg(long)]
pub ebpf_agent_version: Option<String>,
}

/// Arguments for Fleet Control scenarios that also install Agent Control
Expand Down
7 changes: 7 additions & 0 deletions test/e2e-runner/src/linux/scenarios/ebpf_agent.rs
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,11 @@ pub fn test_ebpf_agent(args: InstallationArgs) {
.clone()
.expect("--infra-agent-version is required for this scenario");

let ebpf_version = args
.ebpf_agent_version
.clone()
.expect("--ebpf-agent-version is required for this scenario");

let staging = args.nr_region == Region::Staging;

let recipe_data = RecipeData {
Expand Down Expand Up @@ -59,13 +64,15 @@ agents:
config_agent:
DEPLOYMENT_NAME: {test_id}
OTLP_ENDPOINT: staging-otlp.nr-data.net:443
version: {ebpf_version}
"#
)
} else {
format!(
r#"
config_agent:
DEPLOYMENT_NAME: {test_id}
version: {ebpf_version}
"#
)
};
Expand Down
Loading