From 22d8889a07e51b0a2d0126b3502f2ec7be460892 Mon Sep 17 00:00:00 2001 From: CheetoDa Date: Tue, 2 Apr 2024 18:05:39 +0530 Subject: [PATCH 1/4] feat: added docker instructions --- ...docker-quickStart-instrumentApplication.md | 106 ++++++++++++++ ...dotnet-docker-quickStart-runApplication.md | 21 +++ ...docker-recommended-installOtelCollector.md | 12 ++ ...ocker-recommended-instrumentApplication.md | 101 +++++++++++++ ...otnet-docker-recommended-runApplication.md | 21 +++ ...docker-quickStart-instrumentApplication.md | 135 +++++++++++++++++ ...golang-docker-quickStart-runApplication.md | 21 +++ ...docker-recommended-installOtelCollector.md | 12 ++ ...ocker-recommended-instrumentApplication.md | 137 ++++++++++++++++++ ...olang-docker-recommended-runApplication.md | 21 +++ ...xamd64-quickStart-instrumentApplication.md | 4 - ...xarm64-quickStart-instrumentApplication.md | 4 - ...samd64-quickStart-instrumentApplication.md | 4 - ...sarm64-quickStart-instrumentApplication.md | 4 - ...docker-quickStart-instrumentApplication.md | 71 +++++++++ ...xpress-docker-quickStart-runApplication.md | 28 ++++ ...docker-recommended-installOtelCollector.md | 12 ++ ...ocker-recommended-instrumentApplication.md | 66 +++++++++ ...press-docker-recommended-runApplication.md | 28 ++++ ...docker-quickStart-instrumentApplication.md | 103 +++++++++++++ ...nestjs-docker-quickStart-runApplication.md | 28 ++++ ...docker-recommended-installOtelCollector.md | 12 ++ ...ocker-recommended-instrumentApplication.md | 104 +++++++++++++ ...estjs-docker-recommended-runApplication.md | 28 ++++ ...docker-quickStart-instrumentApplication.md | 70 +++++++++ ...nodejs-docker-quickStart-runApplication.md | 28 ++++ ...docker-recommended-installOtelCollector.md | 12 ++ ...ocker-recommended-instrumentApplication.md | 67 +++++++++ ...odejs-docker-recommended-runApplication.md | 28 ++++ ...docker-quickStart-instrumentApplication.md | 70 +++++++++ ...others-docker-quickStart-runApplication.md | 28 ++++ ...docker-recommended-installOtelCollector.md | 12 ++ ...ocker-recommended-instrumentApplication.md | 67 +++++++++ ...thers-docker-recommended-runApplication.md | 28 ++++ ...docker-quickStart-instrumentApplication.md | 85 +++++++++++ ...eactjs-docker-quickStart-runApplication.md | 28 ++++ ...docker-recommended-installOtelCollector.md | 12 ++ ...ocker-recommended-instrumentApplication.md | 79 ++++++++++ ...actjs-docker-recommended-runApplication.md | 28 ++++ ...docker-quickStart-instrumentApplication.md | 54 +++++++ ...django-docker-quickStart-runApplication.md | 29 ++++ ...docker-recommended-installOtelCollector.md | 12 ++ ...ocker-recommended-instrumentApplication.md | 59 ++++++++ ...jango-docker-recommended-runApplication.md | 25 ++++ ...docker-quickStart-instrumentApplication.md | 51 +++++++ ...falcon-docker-quickStart-runApplication.md | 29 ++++ ...docker-recommended-installOtelCollector.md | 12 ++ ...ocker-recommended-instrumentApplication.md | 56 +++++++ ...alcon-docker-recommended-runApplication.md | 25 ++++ ...docker-quickStart-instrumentApplication.md | 51 +++++++ ...astapi-docker-quickStart-runApplication.md | 29 ++++ ...docker-recommended-installOtelCollector.md | 12 ++ ...ocker-recommended-instrumentApplication.md | 56 +++++++ ...stapi-docker-recommended-runApplication.md | 25 ++++ ...docker-quickStart-instrumentApplication.md | 50 +++++++ .../flask-docker-quickStart-runApplication.md | 29 ++++ ...docker-recommended-installOtelCollector.md | 12 ++ ...ocker-recommended-instrumentApplication.md | 56 +++++++ ...flask-docker-recommended-runApplication.md | 25 ++++ ...docker-quickStart-instrumentApplication.md | 51 +++++++ ...others-docker-quickStart-runApplication.md | 29 ++++ ...docker-recommended-installOtelCollector.md | 12 ++ ...ocker-recommended-instrumentApplication.md | 56 +++++++ ...thers-docker-recommended-runApplication.md | 25 ++++ .../EnvironmentDetails/EnvironmentDetails.tsx | 16 ++ .../constants/apmDocFilePaths.ts | 13 ++ frontend/src/utils/app.ts | 1 + 67 files changed, 2609 insertions(+), 16 deletions(-) create mode 100644 frontend/src/container/OnboardingContainer/Modules/APM/Dotnet/md-docs/Docker/QuickStart/dotnet-docker-quickStart-instrumentApplication.md create mode 100644 frontend/src/container/OnboardingContainer/Modules/APM/Dotnet/md-docs/Docker/QuickStart/dotnet-docker-quickStart-runApplication.md create mode 100644 frontend/src/container/OnboardingContainer/Modules/APM/Dotnet/md-docs/Docker/Recommended/dotnet-docker-recommended-installOtelCollector.md create mode 100644 frontend/src/container/OnboardingContainer/Modules/APM/Dotnet/md-docs/Docker/Recommended/dotnet-docker-recommended-instrumentApplication.md create mode 100644 frontend/src/container/OnboardingContainer/Modules/APM/Dotnet/md-docs/Docker/Recommended/dotnet-docker-recommended-runApplication.md create mode 100644 frontend/src/container/OnboardingContainer/Modules/APM/GoLang/md-docs/Docker/QuickStart/golang-docker-quickStart-instrumentApplication.md create mode 100644 frontend/src/container/OnboardingContainer/Modules/APM/GoLang/md-docs/Docker/QuickStart/golang-docker-quickStart-runApplication.md create mode 100644 frontend/src/container/OnboardingContainer/Modules/APM/GoLang/md-docs/Docker/Recommended/golang-docker-recommended-installOtelCollector.md create mode 100644 frontend/src/container/OnboardingContainer/Modules/APM/GoLang/md-docs/Docker/Recommended/golang-docker-recommended-instrumentApplication.md create mode 100644 frontend/src/container/OnboardingContainer/Modules/APM/GoLang/md-docs/Docker/Recommended/golang-docker-recommended-runApplication.md create mode 100644 frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/Express/Docker/QuickStart/express-docker-quickStart-instrumentApplication.md create mode 100644 frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/Express/Docker/QuickStart/express-docker-quickStart-runApplication.md create mode 100644 frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/Express/Docker/Recommended/express-docker-recommended-installOtelCollector.md create mode 100644 frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/Express/Docker/Recommended/express-docker-recommended-instrumentApplication.md create mode 100644 frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/Express/Docker/Recommended/express-docker-recommended-runApplication.md create mode 100644 frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/NestJS/Docker/QuickStart/nestjs-docker-quickStart-instrumentApplication.md create mode 100644 frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/NestJS/Docker/QuickStart/nestjs-docker-quickStart-runApplication.md create mode 100644 frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/NestJS/Docker/Recommended/nestjs-docker-recommended-installOtelCollector.md create mode 100644 frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/NestJS/Docker/Recommended/nestjs-docker-recommended-instrumentApplication.md create mode 100644 frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/NestJS/Docker/Recommended/nestjs-docker-recommended-runApplication.md create mode 100644 frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/NodeJS/Docker/QuickStart/nodejs-docker-quickStart-instrumentApplication.md create mode 100644 frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/NodeJS/Docker/QuickStart/nodejs-docker-quickStart-runApplication.md create mode 100644 frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/NodeJS/Docker/Recommended/nodejs-docker-recommended-installOtelCollector.md create mode 100644 frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/NodeJS/Docker/Recommended/nodejs-docker-recommended-instrumentApplication.md create mode 100644 frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/NodeJS/Docker/Recommended/nodejs-docker-recommended-runApplication.md create mode 100644 frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/Others/Docker/QuickStart/others-docker-quickStart-instrumentApplication.md create mode 100644 frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/Others/Docker/QuickStart/others-docker-quickStart-runApplication.md create mode 100644 frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/Others/Docker/Recommended/others-docker-recommended-installOtelCollector.md create mode 100644 frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/Others/Docker/Recommended/others-docker-recommended-instrumentApplication.md create mode 100644 frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/Others/Docker/Recommended/others-docker-recommended-runApplication.md create mode 100644 frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/ReactJS/Docker/QuickStart/reactjs-docker-quickStart-instrumentApplication.md create mode 100644 frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/ReactJS/Docker/QuickStart/reactjs-docker-quickStart-runApplication.md create mode 100644 frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/ReactJS/Docker/Recommended/reactjs-docker-recommended-installOtelCollector.md create mode 100644 frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/ReactJS/Docker/Recommended/reactjs-docker-recommended-instrumentApplication.md create mode 100644 frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/ReactJS/Docker/Recommended/reactjs-docker-recommended-runApplication.md create mode 100644 frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/Django/Docker/QuickStart/django-docker-quickStart-instrumentApplication.md create mode 100644 frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/Django/Docker/QuickStart/django-docker-quickStart-runApplication.md create mode 100644 frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/Django/Docker/Recommended/django-docker-recommended-installOtelCollector.md create mode 100644 frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/Django/Docker/Recommended/django-docker-recommended-instrumentApplication.md create mode 100644 frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/Django/Docker/Recommended/django-docker-recommended-runApplication.md create mode 100644 frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/Falcon/Docker/QuickStart/falcon-docker-quickStart-instrumentApplication.md create mode 100644 frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/Falcon/Docker/QuickStart/falcon-docker-quickStart-runApplication.md create mode 100644 frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/Falcon/Docker/Recommended/falcon-docker-recommended-installOtelCollector.md create mode 100644 frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/Falcon/Docker/Recommended/falcon-docker-recommended-instrumentApplication.md create mode 100644 frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/Falcon/Docker/Recommended/falcon-docker-recommended-runApplication.md create mode 100644 frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/FastAPI/Docker/QuickStart/fastapi-docker-quickStart-instrumentApplication.md create mode 100644 frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/FastAPI/Docker/QuickStart/fastapi-docker-quickStart-runApplication.md create mode 100644 frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/FastAPI/Docker/Recommended/fastapi-docker-recommended-installOtelCollector.md create mode 100644 frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/FastAPI/Docker/Recommended/fastapi-docker-recommended-instrumentApplication.md create mode 100644 frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/FastAPI/Docker/Recommended/fastapi-docker-recommended-runApplication.md create mode 100644 frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/Flask/Docker/QuickStart/flask-docker-quickStart-instrumentApplication.md create mode 100644 frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/Flask/Docker/QuickStart/flask-docker-quickStart-runApplication.md create mode 100644 frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/Flask/Docker/Recommended/flask-docker-recommended-installOtelCollector.md create mode 100644 frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/Flask/Docker/Recommended/flask-docker-recommended-instrumentApplication.md create mode 100644 frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/Flask/Docker/Recommended/flask-docker-recommended-runApplication.md create mode 100644 frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/Others/Docker/QuickStart/others-docker-quickStart-instrumentApplication.md create mode 100644 frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/Others/Docker/QuickStart/others-docker-quickStart-runApplication.md create mode 100644 frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/Others/Docker/Recommended/others-docker-recommended-installOtelCollector.md create mode 100644 frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/Others/Docker/Recommended/others-docker-recommended-instrumentApplication.md create mode 100644 frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/Others/Docker/Recommended/others-docker-recommended-runApplication.md diff --git a/frontend/src/container/OnboardingContainer/Modules/APM/Dotnet/md-docs/Docker/QuickStart/dotnet-docker-quickStart-instrumentApplication.md b/frontend/src/container/OnboardingContainer/Modules/APM/Dotnet/md-docs/Docker/QuickStart/dotnet-docker-quickStart-instrumentApplication.md new file mode 100644 index 0000000000..1619f2f229 --- /dev/null +++ b/frontend/src/container/OnboardingContainer/Modules/APM/Dotnet/md-docs/Docker/QuickStart/dotnet-docker-quickStart-instrumentApplication.md @@ -0,0 +1,106 @@ + +### Step 1: Install OpenTelemetry Dependencies +Dependencies related to OpenTelemetry exporter and SDK have to be installed first. + +Run the below commands after navigating to the application source folder: +```bash +dotnet add package OpenTelemetry +dotnet add package OpenTelemetry.Exporter.OpenTelemetryProtocol +dotnet add package OpenTelemetry.Extensions.Hosting +dotnet add package OpenTelemetry.Instrumentation.Runtime +dotnet add package OpenTelemetry.Instrumentation.AspNetCore +dotnet add package OpenTelemetry.AutoInstrumentation +``` + +  + +### Step 2: Adding OpenTelemetry as a service and configuring exporter options + +In your `Program.cs` file, add OpenTelemetry as a service. Here, we are configuring these variables: + +`serviceName` - It is the name of your service. + +`otlpOptions.Endpoint` - It is the endpoint for your OTel Collector agent. + +  + +Here’s a sample `Program.cs` file with the configured variables: + +```bash +using System.Diagnostics; +using OpenTelemetry.Exporter; +using OpenTelemetry.Resources; +using OpenTelemetry.Trace; + +var builder = WebApplication.CreateBuilder(args); + +// Configure OpenTelemetry with tracing and auto-start. +builder.Services.AddOpenTelemetry() + .ConfigureResource(resource => + resource.AddService(serviceName: "{{MYAPP}}")) + .WithTracing(tracing => tracing + .AddAspNetCoreInstrumentation() + .AddOtlpExporter(otlpOptions => + { + //sigNoz Cloud Endpoint + otlpOptions.Endpoint = new Uri("https://ingest.{{REGION}}.signoz.cloud:443"); + + otlpOptions.Protocol = OtlpExportProtocol.Grpc; + + //SigNoz Cloud account Ingestion key + string headerKey = "signoz-access-token"; + string headerValue = "{{SIGNOZ_INGESTION_KEY}}"; + + string formattedHeader = $"{headerKey}={headerValue}"; + otlpOptions.Headers = formattedHeader; + })); + +var app = builder.Build(); + +//The index route ("/") is set up to write out the OpenTelemetry trace information on the response: +app.MapGet("/", () => $"Hello World! OpenTelemetry Trace: {Activity.Current?.Id}"); + +app.Run(); +``` + +  + + +The OpenTelemetry.Exporter.Options get or set the target to which the exporter is going to send traces. Here, we’re configuring it to send traces to the OTel Collector agent. The target must be a valid Uri with the scheme (http or https) and host and may contain a port and a path. + +This is done by configuring an OpenTelemetry [TracerProvider](https://github.com/open-telemetry/opentelemetry-dotnet/tree/main/docs/trace/customizing-the-sdk#readme) using extension methods and setting it to auto-start when the host is started. + + +### Step 3: Dockerize your application + +Since the crucial environment variables like SIGNOZ_INGESTION_KEY, Ingestion Endpoint and Service name are set in the `program.cs` file, you don't need to add any additional steps in your Dockerfile. + +An **example** of a Dockerfile could look like this: + +```bash + +# Use the Microsoft official .NET SDK image to build the application +FROM mcr.microsoft.com/dotnet/sdk:8.0 AS build-env +WORKDIR /app + +# Copy the CSPROJ file and restore any dependencies (via NUGET) +COPY *.csproj ./ +RUN dotnet restore + +# Copy the rest of the project files and build the application +COPY . ./ +RUN dotnet publish -c Release -o out + +# Generate the runtime image +FROM mcr.microsoft.com/dotnet/aspnet:8.0 +WORKDIR /app +COPY --from=build-env /app/out . + +# Expose port 5145 for the application +EXPOSE 5145 + +# Set the ASPNETCORE_URLS environment variable to listen on port 5145 +ENV ASPNETCORE_URLS=http://+:5145 + +ENTRYPOINT ["dotnet", "YOUR-APPLICATION.dll"] +``` \ No newline at end of file diff --git a/frontend/src/container/OnboardingContainer/Modules/APM/Dotnet/md-docs/Docker/QuickStart/dotnet-docker-quickStart-runApplication.md b/frontend/src/container/OnboardingContainer/Modules/APM/Dotnet/md-docs/Docker/QuickStart/dotnet-docker-quickStart-runApplication.md new file mode 100644 index 0000000000..38e5776db7 --- /dev/null +++ b/frontend/src/container/OnboardingContainer/Modules/APM/Dotnet/md-docs/Docker/QuickStart/dotnet-docker-quickStart-runApplication.md @@ -0,0 +1,21 @@ +Once you update your Dockerfile, you can build and run it using the commands below. + +  + +### Step 1: Build your dockerfile + +Build your docker image + +```bash +docker build -t . +``` + +- `<` is the name of your Docker Image + +  + +### Step 2: Run your docker image + +```bash +docker run +``` diff --git a/frontend/src/container/OnboardingContainer/Modules/APM/Dotnet/md-docs/Docker/Recommended/dotnet-docker-recommended-installOtelCollector.md b/frontend/src/container/OnboardingContainer/Modules/APM/Dotnet/md-docs/Docker/Recommended/dotnet-docker-recommended-installOtelCollector.md new file mode 100644 index 0000000000..fbeda9c337 --- /dev/null +++ b/frontend/src/container/OnboardingContainer/Modules/APM/Dotnet/md-docs/Docker/Recommended/dotnet-docker-recommended-installOtelCollector.md @@ -0,0 +1,12 @@ +## Setup OpenTelemetry Binary as an agent + +  + +As a first step, you should install the OTel collector Binary according to the instructions provided on [this link](https://signoz.io/docs/tutorial/opentelemetry-binary-usage-in-virtual-machine/). + +  + +Once you are done setting up the OTel collector binary, you can follow the next steps. + +  + diff --git a/frontend/src/container/OnboardingContainer/Modules/APM/Dotnet/md-docs/Docker/Recommended/dotnet-docker-recommended-instrumentApplication.md b/frontend/src/container/OnboardingContainer/Modules/APM/Dotnet/md-docs/Docker/Recommended/dotnet-docker-recommended-instrumentApplication.md new file mode 100644 index 0000000000..691bd7689c --- /dev/null +++ b/frontend/src/container/OnboardingContainer/Modules/APM/Dotnet/md-docs/Docker/Recommended/dotnet-docker-recommended-instrumentApplication.md @@ -0,0 +1,101 @@ +After setting up the Otel collector agent, follow the steps below to instrument your .NET Application + +  +  + +### Step 1: Install OpenTelemetry Dependencies +Install the following dependencies in your application. + +```bash +dotnet add package OpenTelemetry +dotnet add package OpenTelemetry.Exporter.OpenTelemetryProtocol +dotnet add package OpenTelemetry.Extensions.Hosting +dotnet add package OpenTelemetry.Instrumentation.Runtime +dotnet add package OpenTelemetry.Instrumentation.AspNetCore +dotnet add package OpenTelemetry.AutoInstrumentation +``` + +  + +### Step 2: Adding OpenTelemetry as a service and configuring exporter options + +In your `Program.cs` file, add OpenTelemetry as a service. Here, we are configuring these variables: + +`serviceName` - It is the name of your service. + +`otlpOptions.Endpoint` - It is the endpoint for your OTel Collector agent. + +  + +Here’s a sample `Program.cs` file with the configured variables: + +```bash +using System.Diagnostics; +using OpenTelemetry.Exporter; +using OpenTelemetry.Resources; +using OpenTelemetry.Trace; + +var builder = WebApplication.CreateBuilder(args); + +// Configure OpenTelemetry with tracing and auto-start. +builder.Services.AddOpenTelemetry() + .ConfigureResource(resource => + resource.AddService(serviceName: "{{MYAPP}}")) + .WithTracing(tracing => tracing + .AddAspNetCoreInstrumentation() + .AddOtlpExporter(otlpOptions => + { + otlpOptions.Endpoint = new Uri("http://localhost:4317"); + + otlpOptions.Protocol = OtlpExportProtocol.Grpc; + })); + +var app = builder.Build(); + +//The index route ("/") is set up to write out the OpenTelemetry trace information on the response: +app.MapGet("/", () => $"Hello World! OpenTelemetry Trace: {Activity.Current?.Id}"); + +app.Run(); +``` +  + +The OpenTelemetry.Exporter.Options get or set the target to which the exporter is going to send traces. Here, we’re configuring it to send traces to the OTel Collector agent. The target must be a valid Uri with the scheme (http or https) and host and may contain a port and a path. + +This is done by configuring an OpenTelemetry [TracerProvider](https://github.com/open-telemetry/opentelemetry-dotnet/tree/main/docs/trace/customizing-the-sdk#readme) using extension methods and setting it to auto-start when the host is started. + + +  + +### Step 3: Dockerize your application + +Since the crucial environment variables like SIGNOZ_INGESTION_KEY, Ingestion Endpoint and Service name are set in the `program.cs` file, you don't need to add any additional steps in your Dockerfile. + +An **example** of a Dockerfile could look like this: + +```bash + +# Use the Microsoft official .NET SDK image to build the application +FROM mcr.microsoft.com/dotnet/sdk:8.0 AS build-env +WORKDIR /app + +# Copy the CSPROJ file and restore any dependencies (via NUGET) +COPY *.csproj ./ +RUN dotnet restore + +# Copy the rest of the project files and build the application +COPY . ./ +RUN dotnet publish -c Release -o out + +# Generate the runtime image +FROM mcr.microsoft.com/dotnet/aspnet:8.0 +WORKDIR /app +COPY --from=build-env /app/out . + +# Expose port 5145 for the application +EXPOSE 5145 + +# Set the ASPNETCORE_URLS environment variable to listen on port 5145 +ENV ASPNETCORE_URLS=http://+:5145 + +ENTRYPOINT ["dotnet", "YOUR-APPLICATION.dll"] +``` \ No newline at end of file diff --git a/frontend/src/container/OnboardingContainer/Modules/APM/Dotnet/md-docs/Docker/Recommended/dotnet-docker-recommended-runApplication.md b/frontend/src/container/OnboardingContainer/Modules/APM/Dotnet/md-docs/Docker/Recommended/dotnet-docker-recommended-runApplication.md new file mode 100644 index 0000000000..38e5776db7 --- /dev/null +++ b/frontend/src/container/OnboardingContainer/Modules/APM/Dotnet/md-docs/Docker/Recommended/dotnet-docker-recommended-runApplication.md @@ -0,0 +1,21 @@ +Once you update your Dockerfile, you can build and run it using the commands below. + +  + +### Step 1: Build your dockerfile + +Build your docker image + +```bash +docker build -t . +``` + +- `<` is the name of your Docker Image + +  + +### Step 2: Run your docker image + +```bash +docker run +``` diff --git a/frontend/src/container/OnboardingContainer/Modules/APM/GoLang/md-docs/Docker/QuickStart/golang-docker-quickStart-instrumentApplication.md b/frontend/src/container/OnboardingContainer/Modules/APM/GoLang/md-docs/Docker/QuickStart/golang-docker-quickStart-instrumentApplication.md new file mode 100644 index 0000000000..758cd13846 --- /dev/null +++ b/frontend/src/container/OnboardingContainer/Modules/APM/GoLang/md-docs/Docker/QuickStart/golang-docker-quickStart-instrumentApplication.md @@ -0,0 +1,135 @@ +### Step 1: Install OpenTelemetry Dependencies +Dependencies related to OpenTelemetry exporter and SDK have to be installed first. + +Run the below commands after navigating to the application source folder: +```bash +go get go.opentelemetry.io/otel \ + go.opentelemetry.io/otel/trace \ + go.opentelemetry.io/otel/sdk \ + go.opentelemetry.io/contrib/instrumentation/github.com/gin-gonic/gin/otelgin \ + go.opentelemetry.io/otel/exporters/otlp/otlptrace \ + go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc +``` + +**Note:** We are assuming you are using gin request router. If you are using other request routers, check out the [corresponding package](https://signoz.io/docs/instrumentation/golang/#request-routers). +  +  + +### Step 2: Declare environment variables for configuring OpenTelemetry +Declare the following global variables in **`main.go`** which we will use to configure OpenTelemetry: +```bash + var ( + serviceName = os.Getenv("SERVICE_NAME") + collectorURL = os.Getenv("OTEL_EXPORTER_OTLP_ENDPOINT") + insecure = os.Getenv("INSECURE_MODE") + ) +``` +  + +### Step 3: Instrument your Go application +To configure your application to send data we will need a function to initialize OpenTelemetry. Add the following snippet of code in your **`main.go`** file. + +```bash + + import ( + ..... + + "google.golang.org/grpc/credentials" + "github.com/gin-gonic/gin" + "go.opentelemetry.io/otel" + "go.opentelemetry.io/otel/attribute" + "go.opentelemetry.io/otel/exporters/otlp/otlptrace" + "go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc" + + "go.opentelemetry.io/otel/sdk/resource" + sdktrace "go.opentelemetry.io/otel/sdk/trace" + ) + + func initTracer() func(context.Context) error { + + var secureOption otlptracegrpc.Option + + if strings.ToLower(insecure) == "false" || insecure == "0" || strings.ToLower(insecure) == "f" { + secureOption = otlptracegrpc.WithTLSCredentials(credentials.NewClientTLSFromCert(nil, "")) + } else { + secureOption = otlptracegrpc.WithInsecure() + } + + exporter, err := otlptrace.New( + context.Background(), + otlptracegrpc.NewClient( + secureOption, + otlptracegrpc.WithEndpoint(collectorURL), + ), + ) + + if err != nil { + log.Fatalf("Failed to create exporter: %v", err) + } + resources, err := resource.New( + context.Background(), + resource.WithAttributes( + attribute.String("service.name", serviceName), + attribute.String("library.language", "go"), + ), + ) + if err != nil { + log.Fatalf("Could not set resources: %v", err) + } + + otel.SetTracerProvider( + sdktrace.NewTracerProvider( + sdktrace.WithSampler(sdktrace.AlwaysSample()), + sdktrace.WithBatcher(exporter), + sdktrace.WithResource(resources), + ), + ) + return exporter.Shutdown + } +``` +  + +### Step 4: Initialise the tracer in **`main.go`** +Modify the main function to initialise the tracer in **`main.go`**. Initiate the tracer at the very beginning of our main function. +```bash +func main() { + cleanup := initTracer() + defer cleanup(context.Background()) + + ...... +} +``` +  + +### Step 5: Add the OpenTelemetry Gin middleware +Configure Gin to use the middleware by adding the following lines in **`main.go`** +```bash +import ( + .... + "go.opentelemetry.io/contrib/instrumentation/github.com/gin-gonic/gin/otelgin" +) + +func main() { + ...... + r := gin.Default() + r.Use(otelgin.Middleware(serviceName)) + ...... +} +``` + +  + +### Step 6: Dockerize your application + +Set the environment variables in your Dockerfile. + +```bash +... +# Set environment variables +ENV SERVICE_NAME={{MYAPP}} \ + INSECURE_MODE=false \ + OTEL_EXPORTER_OTLP_HEADERS="signoz-access-token=b{{SIGNOZ_INGESTION_KEY}}" \ + OTEL_EXPORTER_OTLP_ENDPOINT=ingest.{{REGION}}.signoz.cloud:443 +... +``` + diff --git a/frontend/src/container/OnboardingContainer/Modules/APM/GoLang/md-docs/Docker/QuickStart/golang-docker-quickStart-runApplication.md b/frontend/src/container/OnboardingContainer/Modules/APM/GoLang/md-docs/Docker/QuickStart/golang-docker-quickStart-runApplication.md new file mode 100644 index 0000000000..38e5776db7 --- /dev/null +++ b/frontend/src/container/OnboardingContainer/Modules/APM/GoLang/md-docs/Docker/QuickStart/golang-docker-quickStart-runApplication.md @@ -0,0 +1,21 @@ +Once you update your Dockerfile, you can build and run it using the commands below. + +  + +### Step 1: Build your dockerfile + +Build your docker image + +```bash +docker build -t . +``` + +- `<` is the name of your Docker Image + +  + +### Step 2: Run your docker image + +```bash +docker run +``` diff --git a/frontend/src/container/OnboardingContainer/Modules/APM/GoLang/md-docs/Docker/Recommended/golang-docker-recommended-installOtelCollector.md b/frontend/src/container/OnboardingContainer/Modules/APM/GoLang/md-docs/Docker/Recommended/golang-docker-recommended-installOtelCollector.md new file mode 100644 index 0000000000..fbeda9c337 --- /dev/null +++ b/frontend/src/container/OnboardingContainer/Modules/APM/GoLang/md-docs/Docker/Recommended/golang-docker-recommended-installOtelCollector.md @@ -0,0 +1,12 @@ +## Setup OpenTelemetry Binary as an agent + +  + +As a first step, you should install the OTel collector Binary according to the instructions provided on [this link](https://signoz.io/docs/tutorial/opentelemetry-binary-usage-in-virtual-machine/). + +  + +Once you are done setting up the OTel collector binary, you can follow the next steps. + +  + diff --git a/frontend/src/container/OnboardingContainer/Modules/APM/GoLang/md-docs/Docker/Recommended/golang-docker-recommended-instrumentApplication.md b/frontend/src/container/OnboardingContainer/Modules/APM/GoLang/md-docs/Docker/Recommended/golang-docker-recommended-instrumentApplication.md new file mode 100644 index 0000000000..3598aa880b --- /dev/null +++ b/frontend/src/container/OnboardingContainer/Modules/APM/GoLang/md-docs/Docker/Recommended/golang-docker-recommended-instrumentApplication.md @@ -0,0 +1,137 @@ +After setting up the Otel collector agent, follow the steps below to instrument your Go Application +  +  + +### Step 1: Install OpenTelemetry Dependencies +Dependencies related to OpenTelemetry exporter and SDK have to be installed first. + +Run the below commands after navigating to the application source folder: +```bash +go get go.opentelemetry.io/otel \ + go.opentelemetry.io/otel/trace \ + go.opentelemetry.io/otel/sdk \ + go.opentelemetry.io/contrib/instrumentation/github.com/gin-gonic/gin/otelgin \ + go.opentelemetry.io/otel/exporters/otlp/otlptrace \ + go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc +``` + +**Note:** We are assuming you are using gin request router. If you are using other request routers, check out the [corresponding package](https://signoz.io/docs/instrumentation/golang/#request-routers). +  +  + +### Step 2: Declare environment variables for configuring OpenTelemetry +Declare the following global variables in **`main.go`** which we will use to configure OpenTelemetry: +```bash + var ( + serviceName = os.Getenv("SERVICE_NAME") + collectorURL = os.Getenv("OTEL_EXPORTER_OTLP_ENDPOINT") + insecure = os.Getenv("INSECURE_MODE") + ) +``` +  + +### Step 3: Instrument your Go application +To configure your application to send data we will need a function to initialize OpenTelemetry. Add the following snippet of code in your **`main.go`** file. + +```bash + + import ( + ..... + + "google.golang.org/grpc/credentials" + "github.com/gin-gonic/gin" + "go.opentelemetry.io/otel" + "go.opentelemetry.io/otel/attribute" + "go.opentelemetry.io/otel/exporters/otlp/otlptrace" + "go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc" + + "go.opentelemetry.io/otel/sdk/resource" + sdktrace "go.opentelemetry.io/otel/sdk/trace" + ) + + func initTracer() func(context.Context) error { + + var secureOption otlptracegrpc.Option + + if strings.ToLower(insecure) == "false" || insecure == "0" || strings.ToLower(insecure) == "f" { + secureOption = otlptracegrpc.WithTLSCredentials(credentials.NewClientTLSFromCert(nil, "")) + } else { + secureOption = otlptracegrpc.WithInsecure() + } + + exporter, err := otlptrace.New( + context.Background(), + otlptracegrpc.NewClient( + secureOption, + otlptracegrpc.WithEndpoint(collectorURL), + ), + ) + + if err != nil { + log.Fatalf("Failed to create exporter: %v", err) + } + resources, err := resource.New( + context.Background(), + resource.WithAttributes( + attribute.String("service.name", serviceName), + attribute.String("library.language", "go"), + ), + ) + if err != nil { + log.Fatalf("Could not set resources: %v", err) + } + + otel.SetTracerProvider( + sdktrace.NewTracerProvider( + sdktrace.WithSampler(sdktrace.AlwaysSample()), + sdktrace.WithBatcher(exporter), + sdktrace.WithResource(resources), + ), + ) + return exporter.Shutdown + } +``` +  + +### Step 4: Initialise the tracer in **`main.go`** +Modify the main function to initialise the tracer in **`main.go`**. Initiate the tracer at the very beginning of our main function. +```bash +func main() { + cleanup := initTracer() + defer cleanup(context.Background()) + + ...... +} +``` +  + +### Step 5: Add the OpenTelemetry Gin middleware +Configure Gin to use the middleware by adding the following lines in **`main.go`** +```bash +import ( + .... + "go.opentelemetry.io/contrib/instrumentation/github.com/gin-gonic/gin/otelgin" +) + +func main() { + ...... + r := gin.Default() + r.Use(otelgin.Middleware(serviceName)) + ...... +} +``` + +  + +### Step 6: Dockerize your application + +Set the environment variables in your Dockerfile. + +```bash +... +# Set environment variables +ENV SERVICE_NAME={{MYAPP}} \ + INSECURE_MODE=true \ + OTEL_EXPORTER_OTLP_ENDPOINT=localhost:4317 +... +``` diff --git a/frontend/src/container/OnboardingContainer/Modules/APM/GoLang/md-docs/Docker/Recommended/golang-docker-recommended-runApplication.md b/frontend/src/container/OnboardingContainer/Modules/APM/GoLang/md-docs/Docker/Recommended/golang-docker-recommended-runApplication.md new file mode 100644 index 0000000000..38e5776db7 --- /dev/null +++ b/frontend/src/container/OnboardingContainer/Modules/APM/GoLang/md-docs/Docker/Recommended/golang-docker-recommended-runApplication.md @@ -0,0 +1,21 @@ +Once you update your Dockerfile, you can build and run it using the commands below. + +  + +### Step 1: Build your dockerfile + +Build your docker image + +```bash +docker build -t . +``` + +- `<` is the name of your Docker Image + +  + +### Step 2: Run your docker image + +```bash +docker run +``` diff --git a/frontend/src/container/OnboardingContainer/Modules/APM/GoLang/md-docs/LinuxAMD64/QuickStart/golang-linuxamd64-quickStart-instrumentApplication.md b/frontend/src/container/OnboardingContainer/Modules/APM/GoLang/md-docs/LinuxAMD64/QuickStart/golang-linuxamd64-quickStart-instrumentApplication.md index f265b09788..043b13d7e7 100644 --- a/frontend/src/container/OnboardingContainer/Modules/APM/GoLang/md-docs/LinuxAMD64/QuickStart/golang-linuxamd64-quickStart-instrumentApplication.md +++ b/frontend/src/container/OnboardingContainer/Modules/APM/GoLang/md-docs/LinuxAMD64/QuickStart/golang-linuxamd64-quickStart-instrumentApplication.md @@ -1,7 +1,3 @@ -After setting up the Otel collector agent, follow the steps below to instrument your Go Application -  -  - ### Step 1: Install OpenTelemetry Dependencies Dependencies related to OpenTelemetry exporter and SDK have to be installed first. diff --git a/frontend/src/container/OnboardingContainer/Modules/APM/GoLang/md-docs/LinuxARM64/QuickStart/golang-linuxarm64-quickStart-instrumentApplication.md b/frontend/src/container/OnboardingContainer/Modules/APM/GoLang/md-docs/LinuxARM64/QuickStart/golang-linuxarm64-quickStart-instrumentApplication.md index f265b09788..043b13d7e7 100644 --- a/frontend/src/container/OnboardingContainer/Modules/APM/GoLang/md-docs/LinuxARM64/QuickStart/golang-linuxarm64-quickStart-instrumentApplication.md +++ b/frontend/src/container/OnboardingContainer/Modules/APM/GoLang/md-docs/LinuxARM64/QuickStart/golang-linuxarm64-quickStart-instrumentApplication.md @@ -1,7 +1,3 @@ -After setting up the Otel collector agent, follow the steps below to instrument your Go Application -  -  - ### Step 1: Install OpenTelemetry Dependencies Dependencies related to OpenTelemetry exporter and SDK have to be installed first. diff --git a/frontend/src/container/OnboardingContainer/Modules/APM/GoLang/md-docs/MacOsAMD64/QuickStart/golang-macosamd64-quickStart-instrumentApplication.md b/frontend/src/container/OnboardingContainer/Modules/APM/GoLang/md-docs/MacOsAMD64/QuickStart/golang-macosamd64-quickStart-instrumentApplication.md index f265b09788..043b13d7e7 100644 --- a/frontend/src/container/OnboardingContainer/Modules/APM/GoLang/md-docs/MacOsAMD64/QuickStart/golang-macosamd64-quickStart-instrumentApplication.md +++ b/frontend/src/container/OnboardingContainer/Modules/APM/GoLang/md-docs/MacOsAMD64/QuickStart/golang-macosamd64-quickStart-instrumentApplication.md @@ -1,7 +1,3 @@ -After setting up the Otel collector agent, follow the steps below to instrument your Go Application -  -  - ### Step 1: Install OpenTelemetry Dependencies Dependencies related to OpenTelemetry exporter and SDK have to be installed first. diff --git a/frontend/src/container/OnboardingContainer/Modules/APM/GoLang/md-docs/MacOsARM64/QuickStart/golang-macosarm64-quickStart-instrumentApplication.md b/frontend/src/container/OnboardingContainer/Modules/APM/GoLang/md-docs/MacOsARM64/QuickStart/golang-macosarm64-quickStart-instrumentApplication.md index f265b09788..043b13d7e7 100644 --- a/frontend/src/container/OnboardingContainer/Modules/APM/GoLang/md-docs/MacOsARM64/QuickStart/golang-macosarm64-quickStart-instrumentApplication.md +++ b/frontend/src/container/OnboardingContainer/Modules/APM/GoLang/md-docs/MacOsARM64/QuickStart/golang-macosarm64-quickStart-instrumentApplication.md @@ -1,7 +1,3 @@ -After setting up the Otel collector agent, follow the steps below to instrument your Go Application -  -  - ### Step 1: Install OpenTelemetry Dependencies Dependencies related to OpenTelemetry exporter and SDK have to be installed first. diff --git a/frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/Express/Docker/QuickStart/express-docker-quickStart-instrumentApplication.md b/frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/Express/Docker/QuickStart/express-docker-quickStart-instrumentApplication.md new file mode 100644 index 0000000000..e376276e80 --- /dev/null +++ b/frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/Express/Docker/QuickStart/express-docker-quickStart-instrumentApplication.md @@ -0,0 +1,71 @@ + +#### Requirements +- Supported Versions ^4.0.0 +  + +### Step 1: Install OpenTelemetry packages + +```bash +npm install --save @opentelemetry/api@^1.6.0 +npm install --save @opentelemetry/sdk-node@^0.45.0 +npm install --save @opentelemetry/auto-instrumentations-node@^0.39.4 +npm install --save @opentelemetry/exporter-trace-otlp-http@^0.45.0 +``` +  + +### Step 2: Create tracing.js file + +```bash +// tracing.js +'use strict' +const process = require('process'); +const opentelemetry = require('@opentelemetry/sdk-node'); +const { getNodeAutoInstrumentations } = require('@opentelemetry/auto-instrumentations-node'); +const { OTLPTraceExporter } = require('@opentelemetry/exporter-trace-otlp-http'); +const { Resource } = require('@opentelemetry/resources'); +const { SemanticResourceAttributes } = require('@opentelemetry/semantic-conventions'); + +// do not set headers in exporterOptions, the OTel spec recommends setting headers through ENV variables +// https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/protocol/exporter.md#specifying-headers-via-environment-variables + +const exporterOptions = { + url: 'https://ingest.{{REGION}}.signoz.cloud:443/v1/traces' +} + +const traceExporter = new OTLPTraceExporter(exporterOptions); +const sdk = new opentelemetry.NodeSDK({ + traceExporter, + instrumentations: [getNodeAutoInstrumentations()], + resource: new Resource({ + [SemanticResourceAttributes.SERVICE_NAME]: '{{MYAPP}}' + }) +}); + +// initialize the SDK and register with the OpenTelemetry API +// this enables the API to record telemetry +sdk.start() + +// gracefully shut down the SDK on process exit +process.on('SIGTERM', () => { + sdk.shutdown() + .then(() => console.log('Tracing terminated')) + .catch((error) => console.log('Error terminating tracing', error)) + .finally(() => process.exit(0)); +}); +``` + +  + +### Step 3: Dockerize your application + +Set the SigNoz ingestion key Environment variable and update your run command to include the `-r` flag and `./tracing.js` file in Dockerfile as: + +```bash +... +# Use an environment variable for the Signoz Ingestion Key +ENV OTEL_EXPORTER_OTLP_HEADERS="signoz-access-token={{SIGNOZ_INGESTION_KEY}}" + +# Run the app with the required OpenTelemetry configuration. app.js is your application main file. +CMD ["node", "-r", "./tracing.js", "app.js"] +... +``` \ No newline at end of file diff --git a/frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/Express/Docker/QuickStart/express-docker-quickStart-runApplication.md b/frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/Express/Docker/QuickStart/express-docker-quickStart-runApplication.md new file mode 100644 index 0000000000..da54fa79da --- /dev/null +++ b/frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/Express/Docker/QuickStart/express-docker-quickStart-runApplication.md @@ -0,0 +1,28 @@ +Once you update your Dockerfile, you can build and run it using the commands below. + +  + +### Step 1: Build your dockerfile + +Build your docker image + +```bash +docker build -t . +``` + +- `<` is the name of your Docker Image + +  + +### Step 2: Run your docker image + +```bash +docker run +``` + +  + +**Note** + + +If you encounter any difficulties, please consult the [troubleshooting section](https://signoz.io/docs/instrumentation/express/#troubleshooting-your-installation) for assistance. \ No newline at end of file diff --git a/frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/Express/Docker/Recommended/express-docker-recommended-installOtelCollector.md b/frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/Express/Docker/Recommended/express-docker-recommended-installOtelCollector.md new file mode 100644 index 0000000000..fbeda9c337 --- /dev/null +++ b/frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/Express/Docker/Recommended/express-docker-recommended-installOtelCollector.md @@ -0,0 +1,12 @@ +## Setup OpenTelemetry Binary as an agent + +  + +As a first step, you should install the OTel collector Binary according to the instructions provided on [this link](https://signoz.io/docs/tutorial/opentelemetry-binary-usage-in-virtual-machine/). + +  + +Once you are done setting up the OTel collector binary, you can follow the next steps. + +  + diff --git a/frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/Express/Docker/Recommended/express-docker-recommended-instrumentApplication.md b/frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/Express/Docker/Recommended/express-docker-recommended-instrumentApplication.md new file mode 100644 index 0000000000..69173b84f0 --- /dev/null +++ b/frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/Express/Docker/Recommended/express-docker-recommended-instrumentApplication.md @@ -0,0 +1,66 @@ +After setting up the Otel collector agent, follow the steps below to instrument your JavaScript Application + +#### Requirements +- Supported Versions ^4.0.0 +  + +### Step 1: Install OpenTelemetry packages + +```bash +npm install --save @opentelemetry/api@^1.6.0 +npm install --save @opentelemetry/sdk-node@^0.45.0 +npm install --save @opentelemetry/auto-instrumentations-node@^0.39.4 +npm install --save @opentelemetry/exporter-trace-otlp-http@^0.45.0 +``` +  + +### Step 2: Create tracing.js file + +```bash +// tracing.js +'use strict' +const process = require('process'); +const opentelemetry = require('@opentelemetry/sdk-node'); +const { getNodeAutoInstrumentations } = require('@opentelemetry/auto-instrumentations-node'); +const { OTLPTraceExporter } = require('@opentelemetry/exporter-trace-otlp-http'); +const { Resource } = require('@opentelemetry/resources'); +const { SemanticResourceAttributes } = require('@opentelemetry/semantic-conventions'); + +const exporterOptions = { + url: process.env.OTEL_EXPORTER_OTLP_ENDPOINT || 'http://localhost:4318/v1/traces', +} + +const traceExporter = new OTLPTraceExporter(exporterOptions); +const sdk = new opentelemetry.NodeSDK({ + traceExporter, + instrumentations: [getNodeAutoInstrumentations()], + resource: new Resource({ + [SemanticResourceAttributes.SERVICE_NAME]: '{{MYAPP}}' + }) +}); + +// initialize the SDK and register with the OpenTelemetry API +// this enables the API to record telemetry +sdk.start() + +// gracefully shut down the SDK on process exit +process.on('SIGTERM', () => { + sdk.shutdown() + .then(() => console.log('Tracing terminated')) + .catch((error) => console.log('Error terminating tracing', error)) + .finally(() => process.exit(0)); +}); +``` + +  + +### Step 3: Dockerize your application + +Set the SigNoz ingestion key Environment variable and update your run command to include the `-r` flag and `./tracing.js` file in Dockerfile as: + +```bash +... +# Run the app with the required OpenTelemetry configuration. app.js is your application main file. +CMD ["node", "-r", "./tracing.js", "app.js"] +... +``` \ No newline at end of file diff --git a/frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/Express/Docker/Recommended/express-docker-recommended-runApplication.md b/frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/Express/Docker/Recommended/express-docker-recommended-runApplication.md new file mode 100644 index 0000000000..da54fa79da --- /dev/null +++ b/frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/Express/Docker/Recommended/express-docker-recommended-runApplication.md @@ -0,0 +1,28 @@ +Once you update your Dockerfile, you can build and run it using the commands below. + +  + +### Step 1: Build your dockerfile + +Build your docker image + +```bash +docker build -t . +``` + +- `<` is the name of your Docker Image + +  + +### Step 2: Run your docker image + +```bash +docker run +``` + +  + +**Note** + + +If you encounter any difficulties, please consult the [troubleshooting section](https://signoz.io/docs/instrumentation/express/#troubleshooting-your-installation) for assistance. \ No newline at end of file diff --git a/frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/NestJS/Docker/QuickStart/nestjs-docker-quickStart-instrumentApplication.md b/frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/NestJS/Docker/QuickStart/nestjs-docker-quickStart-instrumentApplication.md new file mode 100644 index 0000000000..420a0ed695 --- /dev/null +++ b/frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/NestJS/Docker/QuickStart/nestjs-docker-quickStart-instrumentApplication.md @@ -0,0 +1,103 @@ +#### Requirements +- Supported Versions >= `4.0.0` + +  + +### Step 1: Install OpenTelemetry packages + +```bash +npm install --save @opentelemetry/api@^1.6.0 +npm install --save @opentelemetry/sdk-node@^0.45.0 +npm install --save @opentelemetry/auto-instrumentations-node@^0.39.4 +npm install --save @opentelemetry/exporter-trace-otlp-http@^0.45.0 +``` +  + +### Step 2: Create tracing.js file + +```javascript +'use strict'; + +import { getNodeAutoInstrumentations } from '@opentelemetry/auto-instrumentations-node'; +import { OTLPTraceExporter } from '@opentelemetry/exporter-trace-otlp-http'; +import { Resource } from '@opentelemetry/resources'; +import * as opentelemetry from '@opentelemetry/sdk-node'; +import { SemanticResourceAttributes } from '@opentelemetry/semantic-conventions'; + +// Configure the SDK to export telemetry data to the console +// Enable all auto-instrumentations from the meta package +const exporterOptions = { + url: 'https://ingest.{{REGION}}.signoz.cloud:443/v1/traces', +}; + +const traceExporter = new OTLPTraceExporter(exporterOptions); +const sdk = new opentelemetry.NodeSDK({ + traceExporter, + instrumentations: [getNodeAutoInstrumentations()], + resource: new Resource({ + [SemanticResourceAttributes.SERVICE_NAME]: '{{MYAPP}}', + }), +}); + +// initialize the SDK and register with the OpenTelemetry API +// this enables the API to record telemetry +sdk.start(); + +// gracefully shut down the SDK on process exit +process.on('SIGTERM', () => { + sdk + .shutdown() + .then(() => console.log('Tracing terminated')) + .catch((error) => console.log('Error terminating tracing', error)) + .finally(() => process.exit(0)); +}); + +export default sdk; +``` +  + +### Step 3: Import tracer in the `main.js file` + +**Important Note**: The below import should be the first line in the main file of your application (Ex -> `main.ts`) +```bash +const tracer = require('./tracer') +``` +  + +### Step 4: Start the tracer +In the `async function boostrap` section of the application code, initialize the tracer as follows: + +```javascript +const tracer = require('./tracer') + +import { NestFactory } from '@nestjs/core'; +import { AppModule } from './app.module'; + // All of your application code and any imports that should leverage + // OpenTelemetry automatic instrumentation must go here. + +async function bootstrap() { + await tracer.start(); + const app = await NestFactory.create(AppModule); + await app.listen(3001); + } + bootstrap(); +``` + +  + +### Step 5: Dockerize your application + +Set the SigNoz ingestion key Environment variable and expose port 3001 in Dockerfile as: + +```bash +... +# Use an environment variable for the Signoz Ingestion Key +ENV OTEL_EXPORTER_OTLP_HEADERS="signoz-access-token={{SIGNOZ_INGESTION_KEY}}" + +# In step 4 above, you are configuring your NestJS application to listen on port 3001 +EXPOSE 3001 + +# Run the app with the required OpenTelemetry configuration. +CMD [ "nest", "start" ] +... +``` \ No newline at end of file diff --git a/frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/NestJS/Docker/QuickStart/nestjs-docker-quickStart-runApplication.md b/frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/NestJS/Docker/QuickStart/nestjs-docker-quickStart-runApplication.md new file mode 100644 index 0000000000..aaef92765c --- /dev/null +++ b/frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/NestJS/Docker/QuickStart/nestjs-docker-quickStart-runApplication.md @@ -0,0 +1,28 @@ +Once you update your Dockerfile, you can build and run it using the commands below. + +  + +### Step 1: Build your dockerfile + +Build your docker image + +```bash +docker build -t . +``` + +- `<` is the name of your Docker Image + +  + +### Step 2: Run your docker image + +```bash +docker run +``` + +  + +**Note** + + +If you encounter any difficulties, please consult the [troubleshooting section](https://signoz.io/docs/instrumentation/nestjs/#troubleshooting-your-installation) for assistance. \ No newline at end of file diff --git a/frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/NestJS/Docker/Recommended/nestjs-docker-recommended-installOtelCollector.md b/frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/NestJS/Docker/Recommended/nestjs-docker-recommended-installOtelCollector.md new file mode 100644 index 0000000000..fbeda9c337 --- /dev/null +++ b/frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/NestJS/Docker/Recommended/nestjs-docker-recommended-installOtelCollector.md @@ -0,0 +1,12 @@ +## Setup OpenTelemetry Binary as an agent + +  + +As a first step, you should install the OTel collector Binary according to the instructions provided on [this link](https://signoz.io/docs/tutorial/opentelemetry-binary-usage-in-virtual-machine/). + +  + +Once you are done setting up the OTel collector binary, you can follow the next steps. + +  + diff --git a/frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/NestJS/Docker/Recommended/nestjs-docker-recommended-instrumentApplication.md b/frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/NestJS/Docker/Recommended/nestjs-docker-recommended-instrumentApplication.md new file mode 100644 index 0000000000..058fd08373 --- /dev/null +++ b/frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/NestJS/Docker/Recommended/nestjs-docker-recommended-instrumentApplication.md @@ -0,0 +1,104 @@ +  + +After setting up the Otel collector agent, follow the steps below to instrument your JavaScript Application + +#### Requirements +- Supported Versions >= `4.0.0` +  + +### Step 1: Install OpenTelemetry packages + +```bash +npm install --save @opentelemetry/api@^1.6.0 +npm install --save @opentelemetry/sdk-node@^0.45.0 +npm install --save @opentelemetry/auto-instrumentations-node@^0.39.4 +npm install --save @opentelemetry/exporter-trace-otlp-http@^0.45.0 +``` +  + +### Step 2: Create tracing.js file + +```bash +'use strict'; + +import { getNodeAutoInstrumentations } from '@opentelemetry/auto-instrumentations-node'; +import { OTLPTraceExporter } from '@opentelemetry/exporter-trace-otlp-http'; +import { Resource } from '@opentelemetry/resources'; +import * as opentelemetry from '@opentelemetry/sdk-node'; +import { SemanticResourceAttributes } from '@opentelemetry/semantic-conventions'; + +// Configure the SDK to export telemetry data to the console +// Enable all auto-instrumentations from the meta package +const exporterOptions = { + url: 'http://localhost:4318/v1/traces', +}; + +const traceExporter = new OTLPTraceExporter(exporterOptions); +const sdk = new opentelemetry.NodeSDK({ + traceExporter, + instrumentations: [getNodeAutoInstrumentations()], + resource: new Resource({ + [SemanticResourceAttributes.SERVICE_NAME]: '{{MYAPP}}', + }), +}); + +// initialize the SDK and register with the OpenTelemetry API +// this enables the API to record telemetry +sdk.start(); + +// gracefully shut down the SDK on process exit +process.on('SIGTERM', () => { + sdk + .shutdown() + .then(() => console.log('Tracing terminated')) + .catch((error) => console.log('Error terminating tracing', error)) + .finally(() => process.exit(0)); +}); + +export default sdk; +``` +  + +### Step 3: Import tracer in the `main.js file` + +**Important Note**: The below import should be the first line in the main file of your application (Ex -> `main.ts`) +```bash +const tracer = require('./tracer') +``` +  + +### Step 4: Start the tracer +In the `async function boostrap` section of the application code, initialize the tracer as follows: + +```bash +const tracer = require('./tracer') + +import { NestFactory } from '@nestjs/core'; +import { AppModule } from './app.module'; + // All of your application code and any imports that should leverage + // OpenTelemetry automatic instrumentation must go here. + +async function bootstrap() { + await tracer.start(); + const app = await NestFactory.create(AppModule); + await app.listen(3001); + } + bootstrap(); +``` + +  + +### Step 5: Dockerize your application + +Expose port 3001 in Dockerfile as: + +```bash +... + +# In step 4 above, you are configuring your NestJS application to listen on port 3001 +EXPOSE 3001 + +# Run the app with the required OpenTelemetry configuration. +CMD [ "nest", "start" ] +... +``` \ No newline at end of file diff --git a/frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/NestJS/Docker/Recommended/nestjs-docker-recommended-runApplication.md b/frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/NestJS/Docker/Recommended/nestjs-docker-recommended-runApplication.md new file mode 100644 index 0000000000..aaef92765c --- /dev/null +++ b/frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/NestJS/Docker/Recommended/nestjs-docker-recommended-runApplication.md @@ -0,0 +1,28 @@ +Once you update your Dockerfile, you can build and run it using the commands below. + +  + +### Step 1: Build your dockerfile + +Build your docker image + +```bash +docker build -t . +``` + +- `<` is the name of your Docker Image + +  + +### Step 2: Run your docker image + +```bash +docker run +``` + +  + +**Note** + + +If you encounter any difficulties, please consult the [troubleshooting section](https://signoz.io/docs/instrumentation/nestjs/#troubleshooting-your-installation) for assistance. \ No newline at end of file diff --git a/frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/NodeJS/Docker/QuickStart/nodejs-docker-quickStart-instrumentApplication.md b/frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/NodeJS/Docker/QuickStart/nodejs-docker-quickStart-instrumentApplication.md new file mode 100644 index 0000000000..855988ebb1 --- /dev/null +++ b/frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/NodeJS/Docker/QuickStart/nodejs-docker-quickStart-instrumentApplication.md @@ -0,0 +1,70 @@ + +#### Requirements +- NodeJS Version 14 or newer + +  + +### Step 1: Install OpenTelemetry packages + +```bash +npm install --save @opentelemetry/api@^1.6.0 +npm install --save @opentelemetry/sdk-node@^0.45.0 +npm install --save @opentelemetry/auto-instrumentations-node@^0.39.4 +npm install --save @opentelemetry/exporter-trace-otlp-http@^0.45.0 +``` +  + +### Step 2: Create tracing.js file + +```bash +// tracing.js +'use strict' +const process = require('process'); +const opentelemetry = require('@opentelemetry/sdk-node'); +const { getNodeAutoInstrumentations } = require('@opentelemetry/auto-instrumentations-node'); +const { OTLPTraceExporter } = require('@opentelemetry/exporter-trace-otlp-http'); +const { Resource } = require('@opentelemetry/resources'); +const { SemanticResourceAttributes } = require('@opentelemetry/semantic-conventions'); + +// do not set headers in exporterOptions, the OTel spec recommends setting headers through ENV variables +// https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/protocol/exporter.md#specifying-headers-via-environment-variables + +const exporterOptions = { + url: 'https://ingest.{{REGION}}.signoz.cloud:443/v1/traces' +} + +const traceExporter = new OTLPTraceExporter(exporterOptions); +const sdk = new opentelemetry.NodeSDK({ + traceExporter, + instrumentations: [getNodeAutoInstrumentations()], + resource: new Resource({ + [SemanticResourceAttributes.SERVICE_NAME]: '{{MYAPP}}' + }) +}); + +// initialize the SDK and register with the OpenTelemetry API +// this enables the API to record telemetry +sdk.start() + +// gracefully shut down the SDK on process exit +process.on('SIGTERM', () => { + sdk.shutdown() + .then(() => console.log('Tracing terminated')) + .catch((error) => console.log('Error terminating tracing', error)) + .finally(() => process.exit(0)); +}); +``` + +### Step 3: Dockerize your application + +Set the SigNoz ingestion key Environment variable and update your run command to include the `-r` flag and `./tracing.js` file in Dockerfile as: + +```bash +... +# Use an environment variable for the Signoz Ingestion Key +ENV OTEL_EXPORTER_OTLP_HEADERS="signoz-access-token={{SIGNOZ_INGESTION_KEY}}" + +# Run the app with the required OpenTelemetry configuration. app.js is your application main file. +CMD ["node", "-r", "./tracing.js", "app.js"] +... +``` \ No newline at end of file diff --git a/frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/NodeJS/Docker/QuickStart/nodejs-docker-quickStart-runApplication.md b/frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/NodeJS/Docker/QuickStart/nodejs-docker-quickStart-runApplication.md new file mode 100644 index 0000000000..04b0ad7d49 --- /dev/null +++ b/frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/NodeJS/Docker/QuickStart/nodejs-docker-quickStart-runApplication.md @@ -0,0 +1,28 @@ +Once you update your Dockerfile, you can build and run it using the commands below. + +  + +### Step 1: Build your dockerfile + +Build your docker image + +```bash +docker build -t . +``` + +- `<` is the name of your Docker Image + +  + +### Step 2: Run your docker image + +```bash +docker run +``` + +  + +**Note** + + +If you encounter any difficulties, please consult the [troubleshooting section](https://signoz.io/docs/instrumentation/javascript/#troubleshooting-your-installation) for assistance. \ No newline at end of file diff --git a/frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/NodeJS/Docker/Recommended/nodejs-docker-recommended-installOtelCollector.md b/frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/NodeJS/Docker/Recommended/nodejs-docker-recommended-installOtelCollector.md new file mode 100644 index 0000000000..fbeda9c337 --- /dev/null +++ b/frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/NodeJS/Docker/Recommended/nodejs-docker-recommended-installOtelCollector.md @@ -0,0 +1,12 @@ +## Setup OpenTelemetry Binary as an agent + +  + +As a first step, you should install the OTel collector Binary according to the instructions provided on [this link](https://signoz.io/docs/tutorial/opentelemetry-binary-usage-in-virtual-machine/). + +  + +Once you are done setting up the OTel collector binary, you can follow the next steps. + +  + diff --git a/frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/NodeJS/Docker/Recommended/nodejs-docker-recommended-instrumentApplication.md b/frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/NodeJS/Docker/Recommended/nodejs-docker-recommended-instrumentApplication.md new file mode 100644 index 0000000000..90a6806c8c --- /dev/null +++ b/frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/NodeJS/Docker/Recommended/nodejs-docker-recommended-instrumentApplication.md @@ -0,0 +1,67 @@ +  + +After setting up the Otel collector agent, follow the steps below to instrument your JavaScript Application + +#### Requirements +- NodeJS Version 14 or newer + +  + +### Step 1: Install OpenTelemetry packages + +```bash +npm install --save @opentelemetry/api@^1.6.0 +npm install --save @opentelemetry/sdk-node@^0.45.0 +npm install --save @opentelemetry/auto-instrumentations-node@^0.39.4 +npm install --save @opentelemetry/exporter-trace-otlp-http@^0.45.0 +``` +  + +### Step 2: Create tracing.js file + +```bash +// tracing.js +'use strict' +const process = require('process'); +const opentelemetry = require('@opentelemetry/sdk-node'); +const { getNodeAutoInstrumentations } = require('@opentelemetry/auto-instrumentations-node'); +const { OTLPTraceExporter } = require('@opentelemetry/exporter-trace-otlp-http'); +const { Resource } = require('@opentelemetry/resources'); +const { SemanticResourceAttributes } = require('@opentelemetry/semantic-conventions'); + +const exporterOptions = { + url: process.env.OTEL_EXPORTER_OTLP_ENDPOINT || 'http://localhost:4318/v1/traces', +} + +const traceExporter = new OTLPTraceExporter(exporterOptions); +const sdk = new opentelemetry.NodeSDK({ + traceExporter, + instrumentations: [getNodeAutoInstrumentations()], + resource: new Resource({ + [SemanticResourceAttributes.SERVICE_NAME]: '{{MYAPP}}' + }) +}); + +// initialize the SDK and register with the OpenTelemetry API +// this enables the API to record telemetry +sdk.start() + +// gracefully shut down the SDK on process exit +process.on('SIGTERM', () => { + sdk.shutdown() + .then(() => console.log('Tracing terminated')) + .catch((error) => console.log('Error terminating tracing', error)) + .finally(() => process.exit(0)); +}); +``` + +### Step 3: Dockerize your application + +Set the SigNoz ingestion key Environment variable and update your run command to include the `-r` flag and `./tracing.js` file in Dockerfile as: + +```bash +... +# Run the app with the required OpenTelemetry configuration. app.js is your application main file. +CMD ["node", "-r", "./tracing.js", "app.js"] +... +``` diff --git a/frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/NodeJS/Docker/Recommended/nodejs-docker-recommended-runApplication.md b/frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/NodeJS/Docker/Recommended/nodejs-docker-recommended-runApplication.md new file mode 100644 index 0000000000..04b0ad7d49 --- /dev/null +++ b/frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/NodeJS/Docker/Recommended/nodejs-docker-recommended-runApplication.md @@ -0,0 +1,28 @@ +Once you update your Dockerfile, you can build and run it using the commands below. + +  + +### Step 1: Build your dockerfile + +Build your docker image + +```bash +docker build -t . +``` + +- `<` is the name of your Docker Image + +  + +### Step 2: Run your docker image + +```bash +docker run +``` + +  + +**Note** + + +If you encounter any difficulties, please consult the [troubleshooting section](https://signoz.io/docs/instrumentation/javascript/#troubleshooting-your-installation) for assistance. \ No newline at end of file diff --git a/frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/Others/Docker/QuickStart/others-docker-quickStart-instrumentApplication.md b/frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/Others/Docker/QuickStart/others-docker-quickStart-instrumentApplication.md new file mode 100644 index 0000000000..855988ebb1 --- /dev/null +++ b/frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/Others/Docker/QuickStart/others-docker-quickStart-instrumentApplication.md @@ -0,0 +1,70 @@ + +#### Requirements +- NodeJS Version 14 or newer + +  + +### Step 1: Install OpenTelemetry packages + +```bash +npm install --save @opentelemetry/api@^1.6.0 +npm install --save @opentelemetry/sdk-node@^0.45.0 +npm install --save @opentelemetry/auto-instrumentations-node@^0.39.4 +npm install --save @opentelemetry/exporter-trace-otlp-http@^0.45.0 +``` +  + +### Step 2: Create tracing.js file + +```bash +// tracing.js +'use strict' +const process = require('process'); +const opentelemetry = require('@opentelemetry/sdk-node'); +const { getNodeAutoInstrumentations } = require('@opentelemetry/auto-instrumentations-node'); +const { OTLPTraceExporter } = require('@opentelemetry/exporter-trace-otlp-http'); +const { Resource } = require('@opentelemetry/resources'); +const { SemanticResourceAttributes } = require('@opentelemetry/semantic-conventions'); + +// do not set headers in exporterOptions, the OTel spec recommends setting headers through ENV variables +// https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/protocol/exporter.md#specifying-headers-via-environment-variables + +const exporterOptions = { + url: 'https://ingest.{{REGION}}.signoz.cloud:443/v1/traces' +} + +const traceExporter = new OTLPTraceExporter(exporterOptions); +const sdk = new opentelemetry.NodeSDK({ + traceExporter, + instrumentations: [getNodeAutoInstrumentations()], + resource: new Resource({ + [SemanticResourceAttributes.SERVICE_NAME]: '{{MYAPP}}' + }) +}); + +// initialize the SDK and register with the OpenTelemetry API +// this enables the API to record telemetry +sdk.start() + +// gracefully shut down the SDK on process exit +process.on('SIGTERM', () => { + sdk.shutdown() + .then(() => console.log('Tracing terminated')) + .catch((error) => console.log('Error terminating tracing', error)) + .finally(() => process.exit(0)); +}); +``` + +### Step 3: Dockerize your application + +Set the SigNoz ingestion key Environment variable and update your run command to include the `-r` flag and `./tracing.js` file in Dockerfile as: + +```bash +... +# Use an environment variable for the Signoz Ingestion Key +ENV OTEL_EXPORTER_OTLP_HEADERS="signoz-access-token={{SIGNOZ_INGESTION_KEY}}" + +# Run the app with the required OpenTelemetry configuration. app.js is your application main file. +CMD ["node", "-r", "./tracing.js", "app.js"] +... +``` \ No newline at end of file diff --git a/frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/Others/Docker/QuickStart/others-docker-quickStart-runApplication.md b/frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/Others/Docker/QuickStart/others-docker-quickStart-runApplication.md new file mode 100644 index 0000000000..04b0ad7d49 --- /dev/null +++ b/frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/Others/Docker/QuickStart/others-docker-quickStart-runApplication.md @@ -0,0 +1,28 @@ +Once you update your Dockerfile, you can build and run it using the commands below. + +  + +### Step 1: Build your dockerfile + +Build your docker image + +```bash +docker build -t . +``` + +- `<` is the name of your Docker Image + +  + +### Step 2: Run your docker image + +```bash +docker run +``` + +  + +**Note** + + +If you encounter any difficulties, please consult the [troubleshooting section](https://signoz.io/docs/instrumentation/javascript/#troubleshooting-your-installation) for assistance. \ No newline at end of file diff --git a/frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/Others/Docker/Recommended/others-docker-recommended-installOtelCollector.md b/frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/Others/Docker/Recommended/others-docker-recommended-installOtelCollector.md new file mode 100644 index 0000000000..fbeda9c337 --- /dev/null +++ b/frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/Others/Docker/Recommended/others-docker-recommended-installOtelCollector.md @@ -0,0 +1,12 @@ +## Setup OpenTelemetry Binary as an agent + +  + +As a first step, you should install the OTel collector Binary according to the instructions provided on [this link](https://signoz.io/docs/tutorial/opentelemetry-binary-usage-in-virtual-machine/). + +  + +Once you are done setting up the OTel collector binary, you can follow the next steps. + +  + diff --git a/frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/Others/Docker/Recommended/others-docker-recommended-instrumentApplication.md b/frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/Others/Docker/Recommended/others-docker-recommended-instrumentApplication.md new file mode 100644 index 0000000000..90a6806c8c --- /dev/null +++ b/frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/Others/Docker/Recommended/others-docker-recommended-instrumentApplication.md @@ -0,0 +1,67 @@ +  + +After setting up the Otel collector agent, follow the steps below to instrument your JavaScript Application + +#### Requirements +- NodeJS Version 14 or newer + +  + +### Step 1: Install OpenTelemetry packages + +```bash +npm install --save @opentelemetry/api@^1.6.0 +npm install --save @opentelemetry/sdk-node@^0.45.0 +npm install --save @opentelemetry/auto-instrumentations-node@^0.39.4 +npm install --save @opentelemetry/exporter-trace-otlp-http@^0.45.0 +``` +  + +### Step 2: Create tracing.js file + +```bash +// tracing.js +'use strict' +const process = require('process'); +const opentelemetry = require('@opentelemetry/sdk-node'); +const { getNodeAutoInstrumentations } = require('@opentelemetry/auto-instrumentations-node'); +const { OTLPTraceExporter } = require('@opentelemetry/exporter-trace-otlp-http'); +const { Resource } = require('@opentelemetry/resources'); +const { SemanticResourceAttributes } = require('@opentelemetry/semantic-conventions'); + +const exporterOptions = { + url: process.env.OTEL_EXPORTER_OTLP_ENDPOINT || 'http://localhost:4318/v1/traces', +} + +const traceExporter = new OTLPTraceExporter(exporterOptions); +const sdk = new opentelemetry.NodeSDK({ + traceExporter, + instrumentations: [getNodeAutoInstrumentations()], + resource: new Resource({ + [SemanticResourceAttributes.SERVICE_NAME]: '{{MYAPP}}' + }) +}); + +// initialize the SDK and register with the OpenTelemetry API +// this enables the API to record telemetry +sdk.start() + +// gracefully shut down the SDK on process exit +process.on('SIGTERM', () => { + sdk.shutdown() + .then(() => console.log('Tracing terminated')) + .catch((error) => console.log('Error terminating tracing', error)) + .finally(() => process.exit(0)); +}); +``` + +### Step 3: Dockerize your application + +Set the SigNoz ingestion key Environment variable and update your run command to include the `-r` flag and `./tracing.js` file in Dockerfile as: + +```bash +... +# Run the app with the required OpenTelemetry configuration. app.js is your application main file. +CMD ["node", "-r", "./tracing.js", "app.js"] +... +``` diff --git a/frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/Others/Docker/Recommended/others-docker-recommended-runApplication.md b/frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/Others/Docker/Recommended/others-docker-recommended-runApplication.md new file mode 100644 index 0000000000..04b0ad7d49 --- /dev/null +++ b/frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/Others/Docker/Recommended/others-docker-recommended-runApplication.md @@ -0,0 +1,28 @@ +Once you update your Dockerfile, you can build and run it using the commands below. + +  + +### Step 1: Build your dockerfile + +Build your docker image + +```bash +docker build -t . +``` + +- `<` is the name of your Docker Image + +  + +### Step 2: Run your docker image + +```bash +docker run +``` + +  + +**Note** + + +If you encounter any difficulties, please consult the [troubleshooting section](https://signoz.io/docs/instrumentation/javascript/#troubleshooting-your-installation) for assistance. \ No newline at end of file diff --git a/frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/ReactJS/Docker/QuickStart/reactjs-docker-quickStart-instrumentApplication.md b/frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/ReactJS/Docker/QuickStart/reactjs-docker-quickStart-instrumentApplication.md new file mode 100644 index 0000000000..bfcd21571b --- /dev/null +++ b/frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/ReactJS/Docker/QuickStart/reactjs-docker-quickStart-instrumentApplication.md @@ -0,0 +1,85 @@ + +### Step 1: Install OpenTelemetry packages + +```bash +npm install --save @opentelemetry/context-zone +npm install --save @opentelemetry/instrumentation +npm install --save @opentelemetry/auto-instrumentations-web +npm install --save @opentelemetry/sdk-trace-base +npm install --save @opentelemetry/sdk-trace-web +npm install --save @opentelemetry/resources +npm install --save @opentelemetry/semantic-conventions +npm install --save @opentelemetry/exporter-trace-otlp-http +``` +  + +### Step 2: Create tracing.js file + +```javascript +// tracing.js +import { ZoneContextManager } from '@opentelemetry/context-zone'; +import { registerInstrumentations } from '@opentelemetry/instrumentation'; +import { getWebAutoInstrumentations } from '@opentelemetry/auto-instrumentations-web'; +import { BatchSpanProcessor } from '@opentelemetry/sdk-trace-base'; +import { WebTracerProvider } from '@opentelemetry/sdk-trace-web'; +import { Resource } from '@opentelemetry/resources'; +import { SemanticResourceAttributes } from '@opentelemetry/semantic-conventions'; +import { OTLPTraceExporter } from '@opentelemetry/exporter-trace-otlp-http'; + +const provider = new WebTracerProvider({ + resource: new Resource({ + [SemanticResourceAttributes.SERVICE_NAME]: '{{MYAPP}}', + }), +}); +const exporter = new OTLPTraceExporter({ + url: 'https://ingest.{{REGION}}.signoz.cloud:443/v1/traces', + headers: { + "signoz-access-token": "{{SIGNOZ_INGESTION_KEY}}", + }, +}); +provider.addSpanProcessor(new BatchSpanProcessor(exporter)); + +provider.register({ + // Changing default contextManager to use ZoneContextManager - supports asynchronous operations so that traces are not broken + contextManager: new ZoneContextManager(), +}); + +// Registering instrumentations +registerInstrumentations({ + instrumentations: [ + getWebAutoInstrumentations({ + + '@opentelemetry/instrumentation-xml-http-request': { + propagateTraceHeaderCorsUrls: [ + /.+/g, //Regex to match your backend urls. + ], + }, + '@opentelemetry/instrumentation-fetch': { + propagateTraceHeaderCorsUrls: [ + /.+/g, //Regex to match your backend urls. + ], + }, + }), + ], +}); +``` +### Step 3: Import tracer in main file + +**Important Note**: The below import should be the first line in the main file of your application (Ex -> `index.js`) +```bash +import './tracing.js' + +// ...rest of the app's entry point code +``` + +  + +### Step 4: Dockerize your application + +```bash +... + +# Run the app with the required OpenTelemetry configuration. +CMD [ "npm", "start" ] +... +``` \ No newline at end of file diff --git a/frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/ReactJS/Docker/QuickStart/reactjs-docker-quickStart-runApplication.md b/frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/ReactJS/Docker/QuickStart/reactjs-docker-quickStart-runApplication.md new file mode 100644 index 0000000000..0f7e5b4957 --- /dev/null +++ b/frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/ReactJS/Docker/QuickStart/reactjs-docker-quickStart-runApplication.md @@ -0,0 +1,28 @@ +Once you update your Dockerfile, you can build and run it using the commands below. + +  + +### Step 1: Build your dockerfile + +Build your docker image + +```bash +docker build -t . +``` + +- `<` is the name of your Docker Image + +  + +### Step 2: Run your docker image + +```bash +docker run +``` + +  + +**Note** + + +If you encounter any difficulties, please consult this [documentation](https://signoz.io/docs/instrumentation/reactjs/) for assistance. diff --git a/frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/ReactJS/Docker/Recommended/reactjs-docker-recommended-installOtelCollector.md b/frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/ReactJS/Docker/Recommended/reactjs-docker-recommended-installOtelCollector.md new file mode 100644 index 0000000000..fbeda9c337 --- /dev/null +++ b/frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/ReactJS/Docker/Recommended/reactjs-docker-recommended-installOtelCollector.md @@ -0,0 +1,12 @@ +## Setup OpenTelemetry Binary as an agent + +  + +As a first step, you should install the OTel collector Binary according to the instructions provided on [this link](https://signoz.io/docs/tutorial/opentelemetry-binary-usage-in-virtual-machine/). + +  + +Once you are done setting up the OTel collector binary, you can follow the next steps. + +  + diff --git a/frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/ReactJS/Docker/Recommended/reactjs-docker-recommended-instrumentApplication.md b/frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/ReactJS/Docker/Recommended/reactjs-docker-recommended-instrumentApplication.md new file mode 100644 index 0000000000..a737a1291f --- /dev/null +++ b/frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/ReactJS/Docker/Recommended/reactjs-docker-recommended-instrumentApplication.md @@ -0,0 +1,79 @@ + +### Step 1: Install OpenTelemetry packages + +```bash +npm install --save @opentelemetry/context-zone +npm install --save @opentelemetry/instrumentation +npm install --save @opentelemetry/auto-instrumentations-web +npm install --save @opentelemetry/sdk-trace-base +npm install --save @opentelemetry/sdk-trace-web +npm install --save @opentelemetry/resources +npm install --save @opentelemetry/semantic-conventions +npm install --save @opentelemetry/exporter-trace-otlp-http +``` +  + +### Step 2: Create tracing.js file + +```javascript +// tracing.js +import { ZoneContextManager } from '@opentelemetry/context-zone'; +import { registerInstrumentations } from '@opentelemetry/instrumentation'; +import { getWebAutoInstrumentations } from '@opentelemetry/auto-instrumentations-web'; +import { BatchSpanProcessor } from '@opentelemetry/sdk-trace-base'; +import { WebTracerProvider } from '@opentelemetry/sdk-trace-web'; +import { Resource } from '@opentelemetry/resources'; +import { SemanticResourceAttributes } from '@opentelemetry/semantic-conventions'; +import { OTLPTraceExporter } from '@opentelemetry/exporter-trace-otlp-http'; + +const provider = new WebTracerProvider({ + resource: new Resource({ + [SemanticResourceAttributes.SERVICE_NAME]: '{{MYAPP}}', + }), +}); +const exporter = new OTLPTraceExporter({ + url: 'http://localhost:4318/v1/traces', +}); +provider.addSpanProcessor(new BatchSpanProcessor(exporter)); + +provider.register({ + // Changing default contextManager to use ZoneContextManager - supports asynchronous operations so that traces are not broken + contextManager: new ZoneContextManager(), +}); + +// Registering instrumentations +registerInstrumentations({ + instrumentations: [ + getWebAutoInstrumentations({ + + '@opentelemetry/instrumentation-xml-http-request': { + propagateTraceHeaderCorsUrls: [ + /.+/g, //Regex to match your backend urls. + ], + }, + '@opentelemetry/instrumentation-fetch': { + propagateTraceHeaderCorsUrls: [ + /.+/g, //Regex to match your backend urls. + ], + }, + }), + ], +}); +``` +### Step 3: Import tracer in main file + +**Important Note**: The below import should be the first line in the main file of your application (Ex -> `index.js`) +```bash +import './tracing.js' +// ...rest of the app's entry point code +``` + +### Step 4: Dockerize your application + +```bash +... + +# Run the app with the required OpenTelemetry configuration. +CMD [ "npm", "start" ] +... +``` \ No newline at end of file diff --git a/frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/ReactJS/Docker/Recommended/reactjs-docker-recommended-runApplication.md b/frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/ReactJS/Docker/Recommended/reactjs-docker-recommended-runApplication.md new file mode 100644 index 0000000000..0f7e5b4957 --- /dev/null +++ b/frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/ReactJS/Docker/Recommended/reactjs-docker-recommended-runApplication.md @@ -0,0 +1,28 @@ +Once you update your Dockerfile, you can build and run it using the commands below. + +  + +### Step 1: Build your dockerfile + +Build your docker image + +```bash +docker build -t . +``` + +- `<` is the name of your Docker Image + +  + +### Step 2: Run your docker image + +```bash +docker run +``` + +  + +**Note** + + +If you encounter any difficulties, please consult this [documentation](https://signoz.io/docs/instrumentation/reactjs/) for assistance. diff --git a/frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/Django/Docker/QuickStart/django-docker-quickStart-instrumentApplication.md b/frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/Django/Docker/QuickStart/django-docker-quickStart-instrumentApplication.md new file mode 100644 index 0000000000..74d3f3fdc1 --- /dev/null +++ b/frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/Django/Docker/QuickStart/django-docker-quickStart-instrumentApplication.md @@ -0,0 +1,54 @@ +#### Requirements +- Python 3.8 or newer +- for Django, you must define `DJANGO_SETTINGS_MODULE` correctly. If your project is called `mysite`, something like following should work: +```bash +export DJANGO_SETTINGS_MODULE=mysite.settings +``` +  + + +### Step 1 : Add OpenTelemetry dependencies + +In your `requirements.txt` file, add these two OpenTelemetry dependencies: + + +```bash +opentelemetry-distro==0.43b0 +opentelemetry-exporter-otlp==1.22.0 + +``` + +  + +### Step 2 : Dockerize your application + +Update your dockerfile along with OpenTelemetry instructions as shown below: + +```bash +... + +# Install any needed packages specified in requirements.txt +# And install OpenTelemetry packages +RUN pip install --no-cache-dir -r requirements.txt + +RUN opentelemetry-bootstrap --action=install + +# (Optional) Make port 5000 available to the world outside this container (You can choose your own port for this) +EXPOSE 5000 + +# Set environment variables for OpenTelemetry +ENV OTEL_RESOURCE_ATTRIBUTES=service.name={{MYAPP}} +ENV OTEL_EXPORTER_OTLP_ENDPOINT=https://ingest.{REGION}.signoz.cloud:443 +ENV OTEL_EXPORTER_OTLP_HEADERS=signoz-access-token={{SIGNOZ_INGESTION_KEY}} +ENV OTEL_EXPORTER_OTLP_PROTOCOL=grpc + +# Run app.py with OpenTelemetry instrumentation when the container launches +CMD ["opentelemetry-instrument", ""] +... +``` + +- can be `python3 app.py` or `python manage.py runserver --noreload` + + + + diff --git a/frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/Django/Docker/QuickStart/django-docker-quickStart-runApplication.md b/frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/Django/Docker/QuickStart/django-docker-quickStart-runApplication.md new file mode 100644 index 0000000000..b8fca02afb --- /dev/null +++ b/frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/Django/Docker/QuickStart/django-docker-quickStart-runApplication.md @@ -0,0 +1,29 @@ +Once you update your Dockerfile, you can build and run it using the commands below. + +  + +### Step 1: Build your dockerfile + +Build your docker image + +```bash +docker build -t . +``` + +- `<` is the name of your Docker Image + +  + +### Step 2: Run your docker image + +The Docker run command starts a container in detached mode (-d) and maps port 5000 of the host to port 5000 of the container. + +```bash +docker run -d -p 5000:5000 +``` + +  + +**Note** + +If you encounter any difficulties, please consult the [troubleshooting section](https://signoz.io/docs/instrumentation/django/#troubleshooting-your-installation) for assistance. diff --git a/frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/Django/Docker/Recommended/django-docker-recommended-installOtelCollector.md b/frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/Django/Docker/Recommended/django-docker-recommended-installOtelCollector.md new file mode 100644 index 0000000000..fbeda9c337 --- /dev/null +++ b/frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/Django/Docker/Recommended/django-docker-recommended-installOtelCollector.md @@ -0,0 +1,12 @@ +## Setup OpenTelemetry Binary as an agent + +  + +As a first step, you should install the OTel collector Binary according to the instructions provided on [this link](https://signoz.io/docs/tutorial/opentelemetry-binary-usage-in-virtual-machine/). + +  + +Once you are done setting up the OTel collector binary, you can follow the next steps. + +  + diff --git a/frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/Django/Docker/Recommended/django-docker-recommended-instrumentApplication.md b/frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/Django/Docker/Recommended/django-docker-recommended-instrumentApplication.md new file mode 100644 index 0000000000..adc1d65400 --- /dev/null +++ b/frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/Django/Docker/Recommended/django-docker-recommended-instrumentApplication.md @@ -0,0 +1,59 @@ +  + +After setting up the Otel collector agent, follow the steps below to Dockerize your Python Application + +#### Requirements +- Python 3.8 or newer +- for Django, you must define `DJANGO_SETTINGS_MODULE` correctly. If your project is called `mysite`, something like following should work: +```bash +export DJANGO_SETTINGS_MODULE=mysite.settings +``` +  + + +### Step 1 : Add OpenTelemetry dependencies + +In your `requirements.txt` file, add these two OpenTelemetry dependencies: + + +```bash +opentelemetry-distro==0.43b0 +opentelemetry-exporter-otlp==1.22.0 + +``` + +  + +### Step 2 : Dockerize your application + +Update your Dockerfile along with OpenTelemetry instructions as shown below: + +```bash +... + +# Install any needed packages specified in requirements.txt +# And install OpenTelemetry packages +RUN pip install --no-cache-dir -r requirements.txt + +RUN opentelemetry-bootstrap --action=install + +# (Optional) Make port 5000 available to the world outside this container (You can choose your own port for this) +EXPOSE 5000 + +# Set environment variables for OpenTelemetry +ENV OTEL_RESOURCE_ATTRIBUTES=service.name={{MYAPP}} +ENV OTEL_EXPORTER_OTLP_ENDPOINT=http://localhost:4317 +ENV OTEL_EXPORTER_OTLP_PROTOCOL=grpc + +# Run app.py with OpenTelemetry instrumentation when the container launches +CMD ["opentelemetry-instrument", ""] +... +``` + +- can be `python3 app.py` or `python manage.py runserver --noreload` + + + + + + diff --git a/frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/Django/Docker/Recommended/django-docker-recommended-runApplication.md b/frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/Django/Docker/Recommended/django-docker-recommended-runApplication.md new file mode 100644 index 0000000000..decd5061ae --- /dev/null +++ b/frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/Django/Docker/Recommended/django-docker-recommended-runApplication.md @@ -0,0 +1,25 @@ +Once you update your Dockerfile, you can build and run it using the commands below. + +### Step 1: Build your dockerfile + +Build your docker image + +```bash +docker build -t . +``` + +- `<` is the name of your Docker Image + +  + +### Step 2: Run your docker image + +The Docker run command starts a container in detached mode (-d) and maps port 5000 of the host to port 5000 of the container. + +```bash +docker run -d -p 5000:5000 +``` + +**Note** + +If you encounter any difficulties, please consult the [troubleshooting section](https://signoz.io/docs/instrumentation/django/#troubleshooting-your-installation) for assistance. diff --git a/frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/Falcon/Docker/QuickStart/falcon-docker-quickStart-instrumentApplication.md b/frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/Falcon/Docker/QuickStart/falcon-docker-quickStart-instrumentApplication.md new file mode 100644 index 0000000000..8677aef0f0 --- /dev/null +++ b/frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/Falcon/Docker/QuickStart/falcon-docker-quickStart-instrumentApplication.md @@ -0,0 +1,51 @@ +#### Requirements +- Python 3.8 or newer + +  + + +### Step 1 : Add OpenTelemetry dependencies + +In your `requirements.txt` file, add these two OpenTelemetry dependencies: + + +```bash +opentelemetry-distro==0.43b0 +opentelemetry-exporter-otlp==1.22.0 + +``` + +  + +### Step 2 : Dockerize your application + +Update your dockerfile along with OpenTelemetry instructions as shown below: + +```bash +... + +# Install any needed packages specified in requirements.txt +# And install OpenTelemetry packages +RUN pip install --no-cache-dir -r requirements.txt + +RUN opentelemetry-bootstrap --action=install + +# (Optional) Make port 5000 available to the world outside this container (You can choose your own port for this) +EXPOSE 5000 + +# Set environment variables for OpenTelemetry +ENV OTEL_RESOURCE_ATTRIBUTES=service.name={{MYAPP}} +ENV OTEL_EXPORTER_OTLP_ENDPOINT=https://ingest.{REGION}.signoz.cloud:443 +ENV OTEL_EXPORTER_OTLP_HEADERS=signoz-access-token={{SIGNOZ_INGESTION_KEY}} +ENV OTEL_EXPORTER_OTLP_PROTOCOL=grpc + +# Run app.py with OpenTelemetry instrumentation when the container launches +CMD ["opentelemetry-instrument", ""] +... +``` + +- can be `python3 app.py` + + + + diff --git a/frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/Falcon/Docker/QuickStart/falcon-docker-quickStart-runApplication.md b/frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/Falcon/Docker/QuickStart/falcon-docker-quickStart-runApplication.md new file mode 100644 index 0000000000..f72caf29b7 --- /dev/null +++ b/frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/Falcon/Docker/QuickStart/falcon-docker-quickStart-runApplication.md @@ -0,0 +1,29 @@ +Once you update your Dockerfile, you can build and run it using the commands below. + +  + +### Step 1: Build your dockerfile + +Build your docker image + +```bash +docker build -t . +``` + +- `<` is the name of your Docker Image + +  + +### Step 2: Run your docker image + +The Docker run command starts a container in detached mode (-d) and maps port 5000 of the host to port 5000 of the container. + +```bash +docker run -d -p 5000:5000 +``` + +  + +**Note** + +If you encounter any difficulties, please consult the [troubleshooting section](https://signoz.io/docs/instrumentation/falcon/#troubleshooting-your-installation) for assistance. diff --git a/frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/Falcon/Docker/Recommended/falcon-docker-recommended-installOtelCollector.md b/frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/Falcon/Docker/Recommended/falcon-docker-recommended-installOtelCollector.md new file mode 100644 index 0000000000..fbeda9c337 --- /dev/null +++ b/frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/Falcon/Docker/Recommended/falcon-docker-recommended-installOtelCollector.md @@ -0,0 +1,12 @@ +## Setup OpenTelemetry Binary as an agent + +  + +As a first step, you should install the OTel collector Binary according to the instructions provided on [this link](https://signoz.io/docs/tutorial/opentelemetry-binary-usage-in-virtual-machine/). + +  + +Once you are done setting up the OTel collector binary, you can follow the next steps. + +  + diff --git a/frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/Falcon/Docker/Recommended/falcon-docker-recommended-instrumentApplication.md b/frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/Falcon/Docker/Recommended/falcon-docker-recommended-instrumentApplication.md new file mode 100644 index 0000000000..644a539938 --- /dev/null +++ b/frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/Falcon/Docker/Recommended/falcon-docker-recommended-instrumentApplication.md @@ -0,0 +1,56 @@ +  + +After setting up the Otel collector agent, follow the steps below to Dockerize your Python Application + +#### Requirements +- Python 3.8 or newer + +  + + +### Step 1 : Add OpenTelemetry dependencies + +In your `requirements.txt` file, add these two OpenTelemetry dependencies: + + +```bash +opentelemetry-distro==0.43b0 +opentelemetry-exporter-otlp==1.22.0 + +``` + +  + +### Step 2 : Dockerize your application + +Update your Dockerfile along with OpenTelemetry instructions as shown below: + +```bash +... + +# Install any needed packages specified in requirements.txt +# And install OpenTelemetry packages +RUN pip install --no-cache-dir -r requirements.txt + +RUN opentelemetry-bootstrap --action=install + +# (Optional) Make port 5000 available to the world outside this container (You can choose your own port for this) +EXPOSE 5000 + +# Set environment variables for OpenTelemetry +ENV OTEL_RESOURCE_ATTRIBUTES=service.name={{MYAPP}} +ENV OTEL_EXPORTER_OTLP_ENDPOINT=http://localhost:4317 +ENV OTEL_EXPORTER_OTLP_PROTOCOL=grpc + +# Run app.py with OpenTelemetry instrumentation when the container launches +CMD ["opentelemetry-instrument", ""] +... +``` + +- can be `python3 app.py` + + + + + + diff --git a/frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/Falcon/Docker/Recommended/falcon-docker-recommended-runApplication.md b/frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/Falcon/Docker/Recommended/falcon-docker-recommended-runApplication.md new file mode 100644 index 0000000000..b004b6b742 --- /dev/null +++ b/frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/Falcon/Docker/Recommended/falcon-docker-recommended-runApplication.md @@ -0,0 +1,25 @@ +Once you update your Dockerfile, you can build and run it using the commands below. + +### Step 1: Build your dockerfile + +Build your docker image + +```bash +docker build -t . +``` + +- `<` is the name of your Docker Image + +  + +### Step 2: Run your docker image + +The Docker run command starts a container in detached mode (-d) and maps port 5000 of the host to port 5000 of the container. + +```bash +docker run -d -p 5000:5000 +``` + +**Note** + +If you encounter any difficulties, please consult the [troubleshooting section](https://signoz.io/docs/instrumentation/falcon/#troubleshooting-your-installation) for assistance. diff --git a/frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/FastAPI/Docker/QuickStart/fastapi-docker-quickStart-instrumentApplication.md b/frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/FastAPI/Docker/QuickStart/fastapi-docker-quickStart-instrumentApplication.md new file mode 100644 index 0000000000..e08f38ee49 --- /dev/null +++ b/frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/FastAPI/Docker/QuickStart/fastapi-docker-quickStart-instrumentApplication.md @@ -0,0 +1,51 @@ +#### Requirements +- Python 3.8 or newer + +  + + +### Step 1 : Add OpenTelemetry dependencies + +In your `requirements.txt` file, add these two OpenTelemetry dependencies: + + +```bash +opentelemetry-distro==0.43b0 +opentelemetry-exporter-otlp==1.22.0 + +``` + +  + +### Step 2 : Dockerize your application + +Update your dockerfile along with OpenTelemetry instructions as shown below: + +```bash +... + +# Install any needed packages specified in requirements.txt +# And install OpenTelemetry packages +RUN pip install --no-cache-dir -r requirements.txt + +RUN opentelemetry-bootstrap --action=install + +# (Optional) Make port 5000 available to the world outside this container (You can choose your own port for this) +EXPOSE 5000 + +# Set environment variables for OpenTelemetry +ENV OTEL_RESOURCE_ATTRIBUTES=service.name={{MYAPP}} +ENV OTEL_EXPORTER_OTLP_ENDPOINT=https://ingest.{REGION}.signoz.cloud:443 +ENV OTEL_EXPORTER_OTLP_HEADERS=signoz-access-token={{SIGNOZ_INGESTION_KEY}} +ENV OTEL_EXPORTER_OTLP_PROTOCOL=grpc + +# Run app.py with OpenTelemetry instrumentation when the container launches +CMD ["opentelemetry-instrument", ""] +... +``` + +- can be `python3 app.py` or `python manage.py runserver --noreload` + + + + diff --git a/frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/FastAPI/Docker/QuickStart/fastapi-docker-quickStart-runApplication.md b/frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/FastAPI/Docker/QuickStart/fastapi-docker-quickStart-runApplication.md new file mode 100644 index 0000000000..97ebbf19e4 --- /dev/null +++ b/frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/FastAPI/Docker/QuickStart/fastapi-docker-quickStart-runApplication.md @@ -0,0 +1,29 @@ +Once you update your Dockerfile, you can build and run it using the commands below. + +  + +### Step 1: Build your dockerfile + +Build your docker image + +```bash +docker build -t . +``` + +- `<` is the name of your Docker Image + +  + +### Step 2: Run your docker image + +The Docker run command starts a container in detached mode (-d) and maps port 5000 of the host to port 5000 of the container. + +```bash +docker run -d -p 5000:5000 +``` + +  + +**Note** + +If you encounter any difficulties, please consult the [troubleshooting section](https://signoz.io/docs/instrumentation/fastapi/#troubleshooting-your-installation) for assistance. diff --git a/frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/FastAPI/Docker/Recommended/fastapi-docker-recommended-installOtelCollector.md b/frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/FastAPI/Docker/Recommended/fastapi-docker-recommended-installOtelCollector.md new file mode 100644 index 0000000000..fbeda9c337 --- /dev/null +++ b/frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/FastAPI/Docker/Recommended/fastapi-docker-recommended-installOtelCollector.md @@ -0,0 +1,12 @@ +## Setup OpenTelemetry Binary as an agent + +  + +As a first step, you should install the OTel collector Binary according to the instructions provided on [this link](https://signoz.io/docs/tutorial/opentelemetry-binary-usage-in-virtual-machine/). + +  + +Once you are done setting up the OTel collector binary, you can follow the next steps. + +  + diff --git a/frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/FastAPI/Docker/Recommended/fastapi-docker-recommended-instrumentApplication.md b/frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/FastAPI/Docker/Recommended/fastapi-docker-recommended-instrumentApplication.md new file mode 100644 index 0000000000..b0baec12f5 --- /dev/null +++ b/frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/FastAPI/Docker/Recommended/fastapi-docker-recommended-instrumentApplication.md @@ -0,0 +1,56 @@ +  + +After setting up the Otel collector agent, follow the steps below to Dockerize your Python Application + +#### Requirements +- Python 3.8 or newer + +  + + +### Step 1 : Add OpenTelemetry dependencies + +In your `requirements.txt` file, add these two OpenTelemetry dependencies: + + +```bash +opentelemetry-distro==0.43b0 +opentelemetry-exporter-otlp==1.22.0 + +``` + +  + +### Step 2 : Dockerize your application + +Update your Dockerfile along with OpenTelemetry instructions as shown below: + +```bash +... + +# Install any needed packages specified in requirements.txt +# And install OpenTelemetry packages +RUN pip install --no-cache-dir -r requirements.txt + +RUN opentelemetry-bootstrap --action=install + +# (Optional) Make port 5000 available to the world outside this container (You can choose your own port for this) +EXPOSE 5000 + +# Set environment variables for OpenTelemetry +ENV OTEL_RESOURCE_ATTRIBUTES=service.name={{MYAPP}} +ENV OTEL_EXPORTER_OTLP_ENDPOINT=http://localhost:4317 +ENV OTEL_EXPORTER_OTLP_PROTOCOL=grpc + +# Run app.py with OpenTelemetry instrumentation when the container launches +CMD ["opentelemetry-instrument", ""] +... +``` + +- can be `python3 app.py` or `python manage.py runserver --noreload` + + + + + + diff --git a/frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/FastAPI/Docker/Recommended/fastapi-docker-recommended-runApplication.md b/frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/FastAPI/Docker/Recommended/fastapi-docker-recommended-runApplication.md new file mode 100644 index 0000000000..8d6a614868 --- /dev/null +++ b/frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/FastAPI/Docker/Recommended/fastapi-docker-recommended-runApplication.md @@ -0,0 +1,25 @@ +Once you update your Dockerfile, you can build and run it using the commands below. + +### Step 1: Build your dockerfile + +Build your docker image + +```bash +docker build -t . +``` + +- `<` is the name of your Docker Image + +  + +### Step 2: Run your docker image + +The Docker run command starts a container in detached mode (-d) and maps port 5000 of the host to port 5000 of the container. + +```bash +docker run -d -p 5000:5000 +``` + +**Note** + +If you encounter any difficulties, please consult the [troubleshooting section](https://signoz.io/docs/instrumentation/fastapi/#troubleshooting-your-installation) for assistance. diff --git a/frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/Flask/Docker/QuickStart/flask-docker-quickStart-instrumentApplication.md b/frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/Flask/Docker/QuickStart/flask-docker-quickStart-instrumentApplication.md new file mode 100644 index 0000000000..bae032d07d --- /dev/null +++ b/frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/Flask/Docker/QuickStart/flask-docker-quickStart-instrumentApplication.md @@ -0,0 +1,50 @@ +#### Requirements +- Python 3.8 or newer + +  + +### Step 1 : Add OpenTelemetry dependencies + +In your `requirements.txt` file, add these two OpenTelemetry dependencies: + + +```bash +opentelemetry-distro==0.43b0 +opentelemetry-exporter-otlp==1.22.0 + +``` + +  + +### Step 2 : Dockerize your application + +Update your dockerfile along with OpenTelemetry instructions as shown below: + +```bash +... + +# Install any needed packages specified in requirements.txt +# And install OpenTelemetry packages +RUN pip install --no-cache-dir -r requirements.txt + +RUN opentelemetry-bootstrap --action=install + +#(Optional) Make port 5000 available to the world outside this container (You can choose your own port for this) +EXPOSE 5000 + +# Set environment variables for OpenTelemetry +ENV OTEL_RESOURCE_ATTRIBUTES=service.name={{MYAPP}} +ENV OTEL_EXPORTER_OTLP_ENDPOINT=https://ingest.{REGION}.signoz.cloud:443 +ENV OTEL_EXPORTER_OTLP_HEADERS=signoz-access-token={{SIGNOZ_INGESTION_KEY}} +ENV OTEL_EXPORTER_OTLP_PROTOCOL=grpc + +# Run app.py with OpenTelemetry instrumentation when the container launches +CMD ["opentelemetry-instrument", ""] +... +``` + +- can be `python3 app.py` or `flask run` + + + + diff --git a/frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/Flask/Docker/QuickStart/flask-docker-quickStart-runApplication.md b/frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/Flask/Docker/QuickStart/flask-docker-quickStart-runApplication.md new file mode 100644 index 0000000000..51f27ecaa9 --- /dev/null +++ b/frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/Flask/Docker/QuickStart/flask-docker-quickStart-runApplication.md @@ -0,0 +1,29 @@ +Once you update your Dockerfile, you can build and run it using the commands below. + +  + +### Step 1: Build your dockerfile + +Build your docker image + +```bash +docker build -t . +``` + +- `<` is the name of your Docker Image + +  + +### Step 2: Run your docker image + +The Docker run command starts a container in detached mode (-d) and maps port 5000 of the host to port 5000 of the container. + +```bash +docker run -d -p 5000:5000 +``` + +  + +**Note** + +If you encounter any difficulties, please consult the [troubleshooting section](https://signoz.io/docs/instrumentation/flask/#troubleshooting-your-installation) for assistance. diff --git a/frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/Flask/Docker/Recommended/flask-docker-recommended-installOtelCollector.md b/frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/Flask/Docker/Recommended/flask-docker-recommended-installOtelCollector.md new file mode 100644 index 0000000000..fbeda9c337 --- /dev/null +++ b/frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/Flask/Docker/Recommended/flask-docker-recommended-installOtelCollector.md @@ -0,0 +1,12 @@ +## Setup OpenTelemetry Binary as an agent + +  + +As a first step, you should install the OTel collector Binary according to the instructions provided on [this link](https://signoz.io/docs/tutorial/opentelemetry-binary-usage-in-virtual-machine/). + +  + +Once you are done setting up the OTel collector binary, you can follow the next steps. + +  + diff --git a/frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/Flask/Docker/Recommended/flask-docker-recommended-instrumentApplication.md b/frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/Flask/Docker/Recommended/flask-docker-recommended-instrumentApplication.md new file mode 100644 index 0000000000..ce025d9152 --- /dev/null +++ b/frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/Flask/Docker/Recommended/flask-docker-recommended-instrumentApplication.md @@ -0,0 +1,56 @@ +  + +After setting up the Otel collector agent, follow the steps below to Dockerize your Python Application + +#### Requirements +- Python 3.8 or newer + +  + + +### Step 1 : Add OpenTelemetry dependencies + +In your `requirements.txt` file, add these two OpenTelemetry dependencies: + + +```bash +opentelemetry-distro==0.43b0 +opentelemetry-exporter-otlp==1.22.0 + +``` + +  + +### Step 2 : Dockerize your application + +Update your Dockerfile along with OpenTelemetry instructions as shown below: + +```bash +... + +# Install any needed packages specified in requirements.txt +# And install OpenTelemetry packages +RUN pip install --no-cache-dir -r requirements.txt + +RUN opentelemetry-bootstrap --action=install + +# (Optional) Make port 5000 available to the world outside this container (You can choose your own port for this) +EXPOSE 5000 + +# Set environment variables for OpenTelemetry +ENV OTEL_RESOURCE_ATTRIBUTES=service.name={{MYAPP}} +ENV OTEL_EXPORTER_OTLP_ENDPOINT=http://localhost:4317 +ENV OTEL_EXPORTER_OTLP_PROTOCOL=grpc + +# Run app.py with OpenTelemetry instrumentation when the container launches +CMD ["opentelemetry-instrument", ""] +... +``` + +- can be `python3 app.py` or `flask run` + + + + + + diff --git a/frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/Flask/Docker/Recommended/flask-docker-recommended-runApplication.md b/frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/Flask/Docker/Recommended/flask-docker-recommended-runApplication.md new file mode 100644 index 0000000000..a392f07fc2 --- /dev/null +++ b/frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/Flask/Docker/Recommended/flask-docker-recommended-runApplication.md @@ -0,0 +1,25 @@ +Once you update your Dockerfile, you can build and run it using the commands below. + +### Step 1: Build your dockerfile + +Build your docker image + +```bash +docker build -t . +``` + +- `<` is the name of your Docker Image + +  + +### Step 2: Run your docker image + +The Docker run command starts a container in detached mode (-d) and maps port 5000 of the host to port 5000 of the container. + +```bash +docker run -d -p 5000:5000 +``` + +**Note** + +If you encounter any difficulties, please consult the [troubleshooting section](https://signoz.io/docs/instrumentation/flask/#troubleshooting-your-installation) for assistance. diff --git a/frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/Others/Docker/QuickStart/others-docker-quickStart-instrumentApplication.md b/frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/Others/Docker/QuickStart/others-docker-quickStart-instrumentApplication.md new file mode 100644 index 0000000000..8677aef0f0 --- /dev/null +++ b/frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/Others/Docker/QuickStart/others-docker-quickStart-instrumentApplication.md @@ -0,0 +1,51 @@ +#### Requirements +- Python 3.8 or newer + +  + + +### Step 1 : Add OpenTelemetry dependencies + +In your `requirements.txt` file, add these two OpenTelemetry dependencies: + + +```bash +opentelemetry-distro==0.43b0 +opentelemetry-exporter-otlp==1.22.0 + +``` + +  + +### Step 2 : Dockerize your application + +Update your dockerfile along with OpenTelemetry instructions as shown below: + +```bash +... + +# Install any needed packages specified in requirements.txt +# And install OpenTelemetry packages +RUN pip install --no-cache-dir -r requirements.txt + +RUN opentelemetry-bootstrap --action=install + +# (Optional) Make port 5000 available to the world outside this container (You can choose your own port for this) +EXPOSE 5000 + +# Set environment variables for OpenTelemetry +ENV OTEL_RESOURCE_ATTRIBUTES=service.name={{MYAPP}} +ENV OTEL_EXPORTER_OTLP_ENDPOINT=https://ingest.{REGION}.signoz.cloud:443 +ENV OTEL_EXPORTER_OTLP_HEADERS=signoz-access-token={{SIGNOZ_INGESTION_KEY}} +ENV OTEL_EXPORTER_OTLP_PROTOCOL=grpc + +# Run app.py with OpenTelemetry instrumentation when the container launches +CMD ["opentelemetry-instrument", ""] +... +``` + +- can be `python3 app.py` + + + + diff --git a/frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/Others/Docker/QuickStart/others-docker-quickStart-runApplication.md b/frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/Others/Docker/QuickStart/others-docker-quickStart-runApplication.md new file mode 100644 index 0000000000..53343fa324 --- /dev/null +++ b/frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/Others/Docker/QuickStart/others-docker-quickStart-runApplication.md @@ -0,0 +1,29 @@ +Once you update your Dockerfile, you can build and run it using the commands below. + +  + +### Step 1: Build your dockerfile + +Build your docker image + +```bash +docker build -t . +``` + +- `<` is the name of your Docker Image + +  + +### Step 2: Run your docker image + +The Docker run command starts a container in detached mode (-d) and maps port 5000 of the host to port 5000 of the container. + +```bash +docker run -d -p 5000:5000 +``` + +  + +**Note** + +If you encounter any difficulties, please consult the [troubleshooting section](https://signoz.io/docs/instrumentation/python/#troubleshooting-your-installation) for assistance. diff --git a/frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/Others/Docker/Recommended/others-docker-recommended-installOtelCollector.md b/frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/Others/Docker/Recommended/others-docker-recommended-installOtelCollector.md new file mode 100644 index 0000000000..fbeda9c337 --- /dev/null +++ b/frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/Others/Docker/Recommended/others-docker-recommended-installOtelCollector.md @@ -0,0 +1,12 @@ +## Setup OpenTelemetry Binary as an agent + +  + +As a first step, you should install the OTel collector Binary according to the instructions provided on [this link](https://signoz.io/docs/tutorial/opentelemetry-binary-usage-in-virtual-machine/). + +  + +Once you are done setting up the OTel collector binary, you can follow the next steps. + +  + diff --git a/frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/Others/Docker/Recommended/others-docker-recommended-instrumentApplication.md b/frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/Others/Docker/Recommended/others-docker-recommended-instrumentApplication.md new file mode 100644 index 0000000000..644a539938 --- /dev/null +++ b/frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/Others/Docker/Recommended/others-docker-recommended-instrumentApplication.md @@ -0,0 +1,56 @@ +  + +After setting up the Otel collector agent, follow the steps below to Dockerize your Python Application + +#### Requirements +- Python 3.8 or newer + +  + + +### Step 1 : Add OpenTelemetry dependencies + +In your `requirements.txt` file, add these two OpenTelemetry dependencies: + + +```bash +opentelemetry-distro==0.43b0 +opentelemetry-exporter-otlp==1.22.0 + +``` + +  + +### Step 2 : Dockerize your application + +Update your Dockerfile along with OpenTelemetry instructions as shown below: + +```bash +... + +# Install any needed packages specified in requirements.txt +# And install OpenTelemetry packages +RUN pip install --no-cache-dir -r requirements.txt + +RUN opentelemetry-bootstrap --action=install + +# (Optional) Make port 5000 available to the world outside this container (You can choose your own port for this) +EXPOSE 5000 + +# Set environment variables for OpenTelemetry +ENV OTEL_RESOURCE_ATTRIBUTES=service.name={{MYAPP}} +ENV OTEL_EXPORTER_OTLP_ENDPOINT=http://localhost:4317 +ENV OTEL_EXPORTER_OTLP_PROTOCOL=grpc + +# Run app.py with OpenTelemetry instrumentation when the container launches +CMD ["opentelemetry-instrument", ""] +... +``` + +- can be `python3 app.py` + + + + + + diff --git a/frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/Others/Docker/Recommended/others-docker-recommended-runApplication.md b/frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/Others/Docker/Recommended/others-docker-recommended-runApplication.md new file mode 100644 index 0000000000..da1e376789 --- /dev/null +++ b/frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/Others/Docker/Recommended/others-docker-recommended-runApplication.md @@ -0,0 +1,25 @@ +Once you update your Dockerfile, you can build and run it using the commands below. + +### Step 1: Build your dockerfile + +Build your docker image + +```bash +docker build -t . +``` + +- `<` is the name of your Docker Image + +  + +### Step 2: Run your docker image + +The Docker run command starts a container in detached mode (-d) and maps port 5000 of the host to port 5000 of the container. + +```bash +docker run -d -p 5000:5000 +``` + +**Note** + +If you encounter any difficulties, please consult the [troubleshooting section](https://signoz.io/docs/instrumentation/python/#troubleshooting-your-installation) for assistance. diff --git a/frontend/src/container/OnboardingContainer/Steps/EnvironmentDetails/EnvironmentDetails.tsx b/frontend/src/container/OnboardingContainer/Steps/EnvironmentDetails/EnvironmentDetails.tsx index f4f8381de7..fd77b14fe2 100644 --- a/frontend/src/container/OnboardingContainer/Steps/EnvironmentDetails/EnvironmentDetails.tsx +++ b/frontend/src/container/OnboardingContainer/Steps/EnvironmentDetails/EnvironmentDetails.tsx @@ -30,6 +30,10 @@ const supportedEnvironments: SupportedEnvironmentsProps[] = [ name: 'MacOS ARM64', id: 'macOsARM64', }, + { + name: 'Docker', + id: 'docker', + }, ]; export default function EnvironmentDetails(): JSX.Element { @@ -55,6 +59,18 @@ export default function EnvironmentDetails(): JSX.Element { ) { return null; } + if ( + selectedModule?.id !== useCases.APM.id && + environment.id === 'docker' + ) { + return null; + } + if ( + selectedModule?.id !== useCases.APM.id && + environment.id === 'docker' + ) { + return null; + } return ( { const { hostname } = window.location; + return true; return hostname?.endsWith('signoz.cloud'); }; From eb74cb4c5eaaa8c929782631ae8631dfaf6d17aa Mon Sep 17 00:00:00 2001 From: CheetoDa Date: Wed, 3 Apr 2024 04:03:00 +0530 Subject: [PATCH 2/4] feat: docker completed --- ...dotnet-docker-quickStart-runApplication.md | 2 +- ...otnet-docker-recommended-runApplication.md | 2 +- ...docker-quickStart-instrumentApplication.md | 67 ++++ ...elixir-docker-quickStart-runApplication.md | 25 ++ ...docker-recommended-installOtelCollector.md | 12 + ...ocker-recommended-instrumentApplication.md | 61 ++++ ...lixir-docker-recommended-runApplication.md | 25 ++ ...golang-docker-quickStart-runApplication.md | 2 +- ...olang-docker-recommended-runApplication.md | 2 +- ...docker-quickStart-instrumentApplication.md | 25 ++ .../jboss-docker-quickStart-runApplication.md | 25 ++ ...docker-recommended-installOtelCollector.md | 12 + ...ocker-recommended-instrumentApplication.md | 24 ++ ...jboss-docker-recommended-runApplication.md | 25 ++ ...docker-quickStart-instrumentApplication.md | 27 ++ ...others-docker-quickStart-runApplication.md | 27 ++ ...docker-recommended-installOtelCollector.md | 12 + ...ocker-recommended-instrumentApplication.md | 22 ++ ...thers-docker-recommended-runApplication.md | 26 ++ ...docker-quickStart-instrumentApplication.md | 27 ++ ...ngBoot-docker-quickStart-runApplication.md | 28 ++ ...docker-recommended-installOtelCollector.md | 12 + ...ocker-recommended-instrumentApplication.md | 22 ++ ...gBoot-docker-recommended-runApplication.md | 26 ++ ...docker-quickStart-instrumentApplication.md | 33 ++ ...tomcat-docker-quickStart-runApplication.md | 26 ++ ...docker-recommended-installOtelCollector.md | 96 ++++++ ...ocker-recommended-instrumentApplication.md | 30 ++ ...omcat-docker-recommended-runApplication.md | 26 ++ ...xpress-docker-quickStart-runApplication.md | 2 +- ...press-docker-recommended-runApplication.md | 2 +- ...nestjs-docker-quickStart-runApplication.md | 2 +- ...estjs-docker-recommended-runApplication.md | 2 +- ...nodejs-docker-quickStart-runApplication.md | 2 +- ...odejs-docker-recommended-runApplication.md | 2 +- ...others-docker-quickStart-runApplication.md | 2 +- ...thers-docker-recommended-runApplication.md | 2 +- ...eactjs-docker-quickStart-runApplication.md | 2 +- ...actjs-docker-recommended-runApplication.md | 2 +- ...docker-quickStart-instrumentApplication.md | 79 +++++ .../php-docker-quickStart-runApplication.md | 21 ++ ...docker-recommended-installOtelCollector.md | 96 ++++++ ...ocker-recommended-instrumentApplication.md | 82 +++++ .../php-docker-recommended-runApplication.md | 21 ++ ...django-docker-quickStart-runApplication.md | 2 +- ...jango-docker-recommended-runApplication.md | 2 +- ...falcon-docker-quickStart-runApplication.md | 2 +- ...alcon-docker-recommended-runApplication.md | 2 +- ...astapi-docker-quickStart-runApplication.md | 2 +- ...stapi-docker-recommended-runApplication.md | 2 +- .../flask-docker-quickStart-runApplication.md | 2 +- ...flask-docker-recommended-runApplication.md | 2 +- ...others-docker-quickStart-runApplication.md | 2 +- ...thers-docker-recommended-runApplication.md | 2 +- ...docker-quickStart-instrumentApplication.md | 54 ++++ .../ror-docker-quickStart-runApplication.md | 21 ++ ...docker-recommended-installOtelCollector.md | 12 + ...ocker-recommended-instrumentApplication.md | 57 ++++ .../ror-docker-recommended-runApplication.md | 21 ++ ...docker-quickStart-instrumentApplication.md | 146 +++++++++ .../rust-docker-quickStart-runApplication.md | 21 ++ ...docker-recommended-installOtelCollector.md | 12 + ...ocker-recommended-instrumentApplication.md | 112 +++++++ .../rust-docker-recommended-runApplication.md | 21 ++ ...docker-quickStart-instrumentApplication.md | 71 +++++ .../swift-docker-quickStart-runApplication.md | 21 ++ ...docker-recommended-installOtelCollector.md | 12 + ...ocker-recommended-instrumentApplication.md | 76 +++++ ...swift-docker-recommended-runApplication.md | 21 ++ .../constants/apmDocFilePaths.ts | 298 ++++++++++++++++++ 70 files changed, 2040 insertions(+), 24 deletions(-) create mode 100644 frontend/src/container/OnboardingContainer/Modules/APM/Elixir/md-docs/Docker/QuickStart/elixir-docker-quickStart-instrumentApplication.md create mode 100644 frontend/src/container/OnboardingContainer/Modules/APM/Elixir/md-docs/Docker/QuickStart/elixir-docker-quickStart-runApplication.md create mode 100644 frontend/src/container/OnboardingContainer/Modules/APM/Elixir/md-docs/Docker/Recommended/elixir-docker-recommended-installOtelCollector.md create mode 100644 frontend/src/container/OnboardingContainer/Modules/APM/Elixir/md-docs/Docker/Recommended/elixir-docker-recommended-instrumentApplication.md create mode 100644 frontend/src/container/OnboardingContainer/Modules/APM/Elixir/md-docs/Docker/Recommended/elixir-docker-recommended-runApplication.md create mode 100644 frontend/src/container/OnboardingContainer/Modules/APM/Java/md-docs/Jboss/Docker/QuickStart/jboss-docker-quickStart-instrumentApplication.md create mode 100644 frontend/src/container/OnboardingContainer/Modules/APM/Java/md-docs/Jboss/Docker/QuickStart/jboss-docker-quickStart-runApplication.md create mode 100644 frontend/src/container/OnboardingContainer/Modules/APM/Java/md-docs/Jboss/Docker/Recommended/jboss-docker-recommended-installOtelCollector.md create mode 100644 frontend/src/container/OnboardingContainer/Modules/APM/Java/md-docs/Jboss/Docker/Recommended/jboss-docker-recommended-instrumentApplication.md create mode 100644 frontend/src/container/OnboardingContainer/Modules/APM/Java/md-docs/Jboss/Docker/Recommended/jboss-docker-recommended-runApplication.md create mode 100644 frontend/src/container/OnboardingContainer/Modules/APM/Java/md-docs/Others/Docker/QuickStart/others-docker-quickStart-instrumentApplication.md create mode 100644 frontend/src/container/OnboardingContainer/Modules/APM/Java/md-docs/Others/Docker/QuickStart/others-docker-quickStart-runApplication.md create mode 100644 frontend/src/container/OnboardingContainer/Modules/APM/Java/md-docs/Others/Docker/Recommended/others-docker-recommended-installOtelCollector.md create mode 100644 frontend/src/container/OnboardingContainer/Modules/APM/Java/md-docs/Others/Docker/Recommended/others-docker-recommended-instrumentApplication.md create mode 100644 frontend/src/container/OnboardingContainer/Modules/APM/Java/md-docs/Others/Docker/Recommended/others-docker-recommended-runApplication.md create mode 100644 frontend/src/container/OnboardingContainer/Modules/APM/Java/md-docs/SpringBoot/Docker/QuickStart/springBoot-docker-quickStart-instrumentApplication.md create mode 100644 frontend/src/container/OnboardingContainer/Modules/APM/Java/md-docs/SpringBoot/Docker/QuickStart/springBoot-docker-quickStart-runApplication.md create mode 100644 frontend/src/container/OnboardingContainer/Modules/APM/Java/md-docs/SpringBoot/Docker/Recommended/springBoot-docker-recommended-installOtelCollector.md create mode 100644 frontend/src/container/OnboardingContainer/Modules/APM/Java/md-docs/SpringBoot/Docker/Recommended/springBoot-docker-recommended-instrumentApplication.md create mode 100644 frontend/src/container/OnboardingContainer/Modules/APM/Java/md-docs/SpringBoot/Docker/Recommended/springBoot-docker-recommended-runApplication.md create mode 100644 frontend/src/container/OnboardingContainer/Modules/APM/Java/md-docs/Tomcat/Docker/QuickStart/tomcat-docker-quickStart-instrumentApplication.md create mode 100644 frontend/src/container/OnboardingContainer/Modules/APM/Java/md-docs/Tomcat/Docker/QuickStart/tomcat-docker-quickStart-runApplication.md create mode 100644 frontend/src/container/OnboardingContainer/Modules/APM/Java/md-docs/Tomcat/Docker/Recommended/tomcat-docker-recommended-installOtelCollector.md create mode 100644 frontend/src/container/OnboardingContainer/Modules/APM/Java/md-docs/Tomcat/Docker/Recommended/tomcat-docker-recommended-instrumentApplication.md create mode 100644 frontend/src/container/OnboardingContainer/Modules/APM/Java/md-docs/Tomcat/Docker/Recommended/tomcat-docker-recommended-runApplication.md create mode 100644 frontend/src/container/OnboardingContainer/Modules/APM/Php/md-docs/Docker/QuickStart/php-docker-quickStart-instrumentApplication.md create mode 100644 frontend/src/container/OnboardingContainer/Modules/APM/Php/md-docs/Docker/QuickStart/php-docker-quickStart-runApplication.md create mode 100644 frontend/src/container/OnboardingContainer/Modules/APM/Php/md-docs/Docker/Recommended/php-docker-recommended-installOtelCollector.md create mode 100644 frontend/src/container/OnboardingContainer/Modules/APM/Php/md-docs/Docker/Recommended/php-docker-recommended-instrumentApplication.md create mode 100644 frontend/src/container/OnboardingContainer/Modules/APM/Php/md-docs/Docker/Recommended/php-docker-recommended-runApplication.md create mode 100644 frontend/src/container/OnboardingContainer/Modules/APM/RubyOnRails/md-docs/Docker/QuickStart/ror-docker-quickStart-instrumentApplication.md create mode 100644 frontend/src/container/OnboardingContainer/Modules/APM/RubyOnRails/md-docs/Docker/QuickStart/ror-docker-quickStart-runApplication.md create mode 100644 frontend/src/container/OnboardingContainer/Modules/APM/RubyOnRails/md-docs/Docker/Recommended/ror-docker-recommended-installOtelCollector.md create mode 100644 frontend/src/container/OnboardingContainer/Modules/APM/RubyOnRails/md-docs/Docker/Recommended/ror-docker-recommended-instrumentApplication.md create mode 100644 frontend/src/container/OnboardingContainer/Modules/APM/RubyOnRails/md-docs/Docker/Recommended/ror-docker-recommended-runApplication.md create mode 100644 frontend/src/container/OnboardingContainer/Modules/APM/Rust/md-docs/Docker/QuickStart/rust-docker-quickStart-instrumentApplication.md create mode 100644 frontend/src/container/OnboardingContainer/Modules/APM/Rust/md-docs/Docker/QuickStart/rust-docker-quickStart-runApplication.md create mode 100644 frontend/src/container/OnboardingContainer/Modules/APM/Rust/md-docs/Docker/Recommended/rust-docker-recommended-installOtelCollector.md create mode 100644 frontend/src/container/OnboardingContainer/Modules/APM/Rust/md-docs/Docker/Recommended/rust-docker-recommended-instrumentApplication.md create mode 100644 frontend/src/container/OnboardingContainer/Modules/APM/Rust/md-docs/Docker/Recommended/rust-docker-recommended-runApplication.md create mode 100644 frontend/src/container/OnboardingContainer/Modules/APM/Swift/md-docs/Docker/QuickStart/swift-docker-quickStart-instrumentApplication.md create mode 100644 frontend/src/container/OnboardingContainer/Modules/APM/Swift/md-docs/Docker/QuickStart/swift-docker-quickStart-runApplication.md create mode 100644 frontend/src/container/OnboardingContainer/Modules/APM/Swift/md-docs/Docker/Recommended/swift-docker-recommended-installOtelCollector.md create mode 100644 frontend/src/container/OnboardingContainer/Modules/APM/Swift/md-docs/Docker/Recommended/swift-docker-recommended-instrumentApplication.md create mode 100644 frontend/src/container/OnboardingContainer/Modules/APM/Swift/md-docs/Docker/Recommended/swift-docker-recommended-runApplication.md diff --git a/frontend/src/container/OnboardingContainer/Modules/APM/Dotnet/md-docs/Docker/QuickStart/dotnet-docker-quickStart-runApplication.md b/frontend/src/container/OnboardingContainer/Modules/APM/Dotnet/md-docs/Docker/QuickStart/dotnet-docker-quickStart-runApplication.md index 38e5776db7..ab7a5dbaf8 100644 --- a/frontend/src/container/OnboardingContainer/Modules/APM/Dotnet/md-docs/Docker/QuickStart/dotnet-docker-quickStart-runApplication.md +++ b/frontend/src/container/OnboardingContainer/Modules/APM/Dotnet/md-docs/Docker/QuickStart/dotnet-docker-quickStart-runApplication.md @@ -10,7 +10,7 @@ Build your docker image docker build -t . ``` -- `<` is the name of your Docker Image +- `` is the name of your Docker Image   diff --git a/frontend/src/container/OnboardingContainer/Modules/APM/Dotnet/md-docs/Docker/Recommended/dotnet-docker-recommended-runApplication.md b/frontend/src/container/OnboardingContainer/Modules/APM/Dotnet/md-docs/Docker/Recommended/dotnet-docker-recommended-runApplication.md index 38e5776db7..ab7a5dbaf8 100644 --- a/frontend/src/container/OnboardingContainer/Modules/APM/Dotnet/md-docs/Docker/Recommended/dotnet-docker-recommended-runApplication.md +++ b/frontend/src/container/OnboardingContainer/Modules/APM/Dotnet/md-docs/Docker/Recommended/dotnet-docker-recommended-runApplication.md @@ -10,7 +10,7 @@ Build your docker image docker build -t . ``` -- `<` is the name of your Docker Image +- `` is the name of your Docker Image   diff --git a/frontend/src/container/OnboardingContainer/Modules/APM/Elixir/md-docs/Docker/QuickStart/elixir-docker-quickStart-instrumentApplication.md b/frontend/src/container/OnboardingContainer/Modules/APM/Elixir/md-docs/Docker/QuickStart/elixir-docker-quickStart-instrumentApplication.md new file mode 100644 index 0000000000..ffaa4b3938 --- /dev/null +++ b/frontend/src/container/OnboardingContainer/Modules/APM/Elixir/md-docs/Docker/QuickStart/elixir-docker-quickStart-instrumentApplication.md @@ -0,0 +1,67 @@ +  + +Follow the steps below to instrument your Elixir (Phoenix + Ecto) Application + +### Step 1: Add dependencies +Install dependencies related to OpenTelemetry by adding them to `mix.exs` file + +```bash + {:opentelemetry_exporter, "~> 1.6"}, + {:opentelemetry_api, "~> 1.2"}, + {:opentelemetry, "~> 1.3"}, + {:opentelemetry_semantic_conventions, "~> 0.2"}, + {:opentelemetry_cowboy, "~> 0.2.1"}, + {:opentelemetry_phoenix, "~> 1.1"}, + {:opentelemetry_ecto, "~> 1.1"} +``` +  + +In your application start, usually the `application.ex` file, setup the telemetry handlers + +```bash + :opentelemetry_cowboy.setup() + OpentelemetryPhoenix.setup(adapter: :cowboy2) + OpentelemetryEcto.setup([:{{MYAPP}}, :repo]) +``` +  + +As an example, this is how you can setup the handlers in your application.ex file for an application called demo : + +```bash +# application.ex +@impl true +def start(_type, _args) do + :opentelemetry_cowboy.setup() + OpentelemetryPhoenix.setup(adapter: :cowboy2) + OpentelemetryEcto.setup([:demo, :repo]) + +end +``` + +  + +### Step 2: Configure Application +You need to configure your application to send telemetry data by adding the following config to your `runtime.exs` file: + +```bash +config :opentelemetry, :resource, service: %{name: "{{MYAPP}}"} + +config :opentelemetry, :processors, + otel_batch_processor: %{ + exporter: { + :opentelemetry_exporter, + %{ + endpoints: ["https://ingest.{{REGION}}.signoz.cloud:443"], + headers: [ + {"signoz-access-token", {{SIGNOZ_ACCESS_TOKEN}} } + ] + } + } + } +``` + +  + +### Step 3: Dockerize your application + +Since the environment variables like SIGNOZ_INGESTION_KEY, Ingestion Endpoint and Service name are set in the above steps, you don't need to add any additional steps in your Dockerfile. \ No newline at end of file diff --git a/frontend/src/container/OnboardingContainer/Modules/APM/Elixir/md-docs/Docker/QuickStart/elixir-docker-quickStart-runApplication.md b/frontend/src/container/OnboardingContainer/Modules/APM/Elixir/md-docs/Docker/QuickStart/elixir-docker-quickStart-runApplication.md new file mode 100644 index 0000000000..7b902502a6 --- /dev/null +++ b/frontend/src/container/OnboardingContainer/Modules/APM/Elixir/md-docs/Docker/QuickStart/elixir-docker-quickStart-runApplication.md @@ -0,0 +1,25 @@ +Once you update your Dockerfile, you can build and run it using the commands below. + +  + +### Step 1: Build your dockerfile + +Build your docker image + +```bash +docker build -t . +``` + +- `` is the name of your Docker Image + +  + +### Step 2: Run your docker image + +```bash +docker run +``` + +  + +To see some examples for instrumented applications, you can checkout [this link](https://signoz.io/docs/instrumentation/elixir/#sample-examples) \ No newline at end of file diff --git a/frontend/src/container/OnboardingContainer/Modules/APM/Elixir/md-docs/Docker/Recommended/elixir-docker-recommended-installOtelCollector.md b/frontend/src/container/OnboardingContainer/Modules/APM/Elixir/md-docs/Docker/Recommended/elixir-docker-recommended-installOtelCollector.md new file mode 100644 index 0000000000..fbeda9c337 --- /dev/null +++ b/frontend/src/container/OnboardingContainer/Modules/APM/Elixir/md-docs/Docker/Recommended/elixir-docker-recommended-installOtelCollector.md @@ -0,0 +1,12 @@ +## Setup OpenTelemetry Binary as an agent + +  + +As a first step, you should install the OTel collector Binary according to the instructions provided on [this link](https://signoz.io/docs/tutorial/opentelemetry-binary-usage-in-virtual-machine/). + +  + +Once you are done setting up the OTel collector binary, you can follow the next steps. + +  + diff --git a/frontend/src/container/OnboardingContainer/Modules/APM/Elixir/md-docs/Docker/Recommended/elixir-docker-recommended-instrumentApplication.md b/frontend/src/container/OnboardingContainer/Modules/APM/Elixir/md-docs/Docker/Recommended/elixir-docker-recommended-instrumentApplication.md new file mode 100644 index 0000000000..306f5cb121 --- /dev/null +++ b/frontend/src/container/OnboardingContainer/Modules/APM/Elixir/md-docs/Docker/Recommended/elixir-docker-recommended-instrumentApplication.md @@ -0,0 +1,61 @@ +  + +After setting up the Otel collector agent, follow the steps below to instrument your Elixir (Phoenix + Ecto) Application + +### Step 1: Add dependencies +Install dependencies related to OpenTelemetry by adding them to `mix.exs` file + +```bash + {:opentelemetry_exporter, "~> 1.6"}, + {:opentelemetry_api, "~> 1.2"}, + {:opentelemetry, "~> 1.3"}, + {:opentelemetry_semantic_conventions, "~> 0.2"}, + {:opentelemetry_cowboy, "~> 0.2.1"}, + {:opentelemetry_phoenix, "~> 1.1"}, + {:opentelemetry_ecto, "~> 1.1"} +``` +  + +In your application start, usually the `application.ex` file, setup the telemetry handlers + +```bash + :opentelemetry_cowboy.setup() + OpentelemetryPhoenix.setup(adapter: :cowboy2) + OpentelemetryEcto.setup([:{{MYAPP}}, :repo]) +``` +  + +As an example, this is how you can setup the handlers in your application.ex file for an application called demo : + +```bash +# application.ex +@impl true +def start(_type, _args) do + :opentelemetry_cowboy.setup() + OpentelemetryPhoenix.setup(adapter: :cowboy2) + OpentelemetryEcto.setup([:demo, :repo]) + +end +``` + +  + +### Step 2: Configure Application +You need to configure your application to send telemetry data by adding the following config to your `runtime.exs` file: + +```bash +config :opentelemetry, :resource, service: %{name: "{{MYAPP}}"} + +config :opentelemetry, :processors, + otel_batch_processor: %{ + exporter: + {:opentelemetry_exporter, + %{endpoints: ["http://localhost:4318"]} + } + } +``` +  + +### Step 3: Dockerize your application + +Since the environment variables like SIGNOZ_INGESTION_KEY, Ingestion Endpoint and Service name are set in the above steps, you don't need to add any additional steps in your Dockerfile. \ No newline at end of file diff --git a/frontend/src/container/OnboardingContainer/Modules/APM/Elixir/md-docs/Docker/Recommended/elixir-docker-recommended-runApplication.md b/frontend/src/container/OnboardingContainer/Modules/APM/Elixir/md-docs/Docker/Recommended/elixir-docker-recommended-runApplication.md new file mode 100644 index 0000000000..7b902502a6 --- /dev/null +++ b/frontend/src/container/OnboardingContainer/Modules/APM/Elixir/md-docs/Docker/Recommended/elixir-docker-recommended-runApplication.md @@ -0,0 +1,25 @@ +Once you update your Dockerfile, you can build and run it using the commands below. + +  + +### Step 1: Build your dockerfile + +Build your docker image + +```bash +docker build -t . +``` + +- `` is the name of your Docker Image + +  + +### Step 2: Run your docker image + +```bash +docker run +``` + +  + +To see some examples for instrumented applications, you can checkout [this link](https://signoz.io/docs/instrumentation/elixir/#sample-examples) \ No newline at end of file diff --git a/frontend/src/container/OnboardingContainer/Modules/APM/GoLang/md-docs/Docker/QuickStart/golang-docker-quickStart-runApplication.md b/frontend/src/container/OnboardingContainer/Modules/APM/GoLang/md-docs/Docker/QuickStart/golang-docker-quickStart-runApplication.md index 38e5776db7..ab7a5dbaf8 100644 --- a/frontend/src/container/OnboardingContainer/Modules/APM/GoLang/md-docs/Docker/QuickStart/golang-docker-quickStart-runApplication.md +++ b/frontend/src/container/OnboardingContainer/Modules/APM/GoLang/md-docs/Docker/QuickStart/golang-docker-quickStart-runApplication.md @@ -10,7 +10,7 @@ Build your docker image docker build -t . ``` -- `<` is the name of your Docker Image +- `` is the name of your Docker Image   diff --git a/frontend/src/container/OnboardingContainer/Modules/APM/GoLang/md-docs/Docker/Recommended/golang-docker-recommended-runApplication.md b/frontend/src/container/OnboardingContainer/Modules/APM/GoLang/md-docs/Docker/Recommended/golang-docker-recommended-runApplication.md index 38e5776db7..ab7a5dbaf8 100644 --- a/frontend/src/container/OnboardingContainer/Modules/APM/GoLang/md-docs/Docker/Recommended/golang-docker-recommended-runApplication.md +++ b/frontend/src/container/OnboardingContainer/Modules/APM/GoLang/md-docs/Docker/Recommended/golang-docker-recommended-runApplication.md @@ -10,7 +10,7 @@ Build your docker image docker build -t . ``` -- `<` is the name of your Docker Image +- `` is the name of your Docker Image   diff --git a/frontend/src/container/OnboardingContainer/Modules/APM/Java/md-docs/Jboss/Docker/QuickStart/jboss-docker-quickStart-instrumentApplication.md b/frontend/src/container/OnboardingContainer/Modules/APM/Java/md-docs/Jboss/Docker/QuickStart/jboss-docker-quickStart-instrumentApplication.md new file mode 100644 index 0000000000..e14152562c --- /dev/null +++ b/frontend/src/container/OnboardingContainer/Modules/APM/Java/md-docs/Jboss/Docker/QuickStart/jboss-docker-quickStart-instrumentApplication.md @@ -0,0 +1,25 @@ +#### Requirements +- Java 8 or higher + +  + +### Dockerize your application + +Update your Dockerfile to include + +```bash +... +# Set working directory. Assuming `/opt/jboss-eap-7.1` to be your working directory. +WORKDIR /opt/jboss-eap-7.1 + +# Download otel java binary agent +RUN wget https://github.com/open-telemetry/opentelemetry-java-instrumentation/releases/latest/download/opentelemetry-javaagent.jar -O opentelemetry-javaagent.jar + +# Open and update the configuration file +RUN sed -i 's/\(JAVA_OPTS=".*\)/\1 -javaagent:\/opt\/jboss-eap-7.1\/opentelemetry-javaagent.jar \ +-Dotel.exporter.otlp.endpoint=https:\/\/ingest.{{REGION}}.signoz.cloud:443 \ +-Dotel.exporter.otlp.headers="signoz-access-token={{SIGNOZ_INGESTION_KEY}}" \ +-Dotel.resource.attributes="service.name={{MYAPP}}"/' /opt/jboss-eap-7.1/bin/standalone.conf +... +``` + diff --git a/frontend/src/container/OnboardingContainer/Modules/APM/Java/md-docs/Jboss/Docker/QuickStart/jboss-docker-quickStart-runApplication.md b/frontend/src/container/OnboardingContainer/Modules/APM/Java/md-docs/Jboss/Docker/QuickStart/jboss-docker-quickStart-runApplication.md new file mode 100644 index 0000000000..2b1a5e4a3d --- /dev/null +++ b/frontend/src/container/OnboardingContainer/Modules/APM/Java/md-docs/Jboss/Docker/QuickStart/jboss-docker-quickStart-runApplication.md @@ -0,0 +1,25 @@ +Once you update your Dockerfile, you can build and run it using the commands below. + +  + +### Step 1: Build your dockerfile + +Build your docker image + +```bash +docker build -t . +``` + +- `` is the name of your Docker Image + +  + +### Step 2: Run your docker image + +```bash +docker run +``` + +  + +If you encounter any difficulties, please consult the [troubleshooting section](https://signoz.io/docs/instrumentation/jboss/#troubleshooting-your-installation) for assistance. \ No newline at end of file diff --git a/frontend/src/container/OnboardingContainer/Modules/APM/Java/md-docs/Jboss/Docker/Recommended/jboss-docker-recommended-installOtelCollector.md b/frontend/src/container/OnboardingContainer/Modules/APM/Java/md-docs/Jboss/Docker/Recommended/jboss-docker-recommended-installOtelCollector.md new file mode 100644 index 0000000000..fbeda9c337 --- /dev/null +++ b/frontend/src/container/OnboardingContainer/Modules/APM/Java/md-docs/Jboss/Docker/Recommended/jboss-docker-recommended-installOtelCollector.md @@ -0,0 +1,12 @@ +## Setup OpenTelemetry Binary as an agent + +  + +As a first step, you should install the OTel collector Binary according to the instructions provided on [this link](https://signoz.io/docs/tutorial/opentelemetry-binary-usage-in-virtual-machine/). + +  + +Once you are done setting up the OTel collector binary, you can follow the next steps. + +  + diff --git a/frontend/src/container/OnboardingContainer/Modules/APM/Java/md-docs/Jboss/Docker/Recommended/jboss-docker-recommended-instrumentApplication.md b/frontend/src/container/OnboardingContainer/Modules/APM/Java/md-docs/Jboss/Docker/Recommended/jboss-docker-recommended-instrumentApplication.md new file mode 100644 index 0000000000..271dcf7085 --- /dev/null +++ b/frontend/src/container/OnboardingContainer/Modules/APM/Java/md-docs/Jboss/Docker/Recommended/jboss-docker-recommended-instrumentApplication.md @@ -0,0 +1,24 @@ +After setting up the Otel collector agent, follow the steps below to instrument your JavaScript Application + +#### Requirements +- Java 8 or higher + +  + +### Dockerize your application + +Update your Dockerfile to include + +```bash +... +# Set working directory. Assuming `/opt/jboss-eap-7.1` to be your working directory. +WORKDIR /opt/jboss-eap-7.1 + +# Download otel java binary agent +RUN wget https://github.com/open-telemetry/opentelemetry-java-instrumentation/releases/latest/download/opentelemetry-javaagent.jar -O opentelemetry-javaagent.jar + +# Open and update the configuration file +RUN sed -i 's/\(JAVA_OPTS=".*\)/\1 -javaagent:\/opt\/jboss-eap-7.1\/opentelemetry-javaagent.jar/' bin/standalone.conf +... +``` + diff --git a/frontend/src/container/OnboardingContainer/Modules/APM/Java/md-docs/Jboss/Docker/Recommended/jboss-docker-recommended-runApplication.md b/frontend/src/container/OnboardingContainer/Modules/APM/Java/md-docs/Jboss/Docker/Recommended/jboss-docker-recommended-runApplication.md new file mode 100644 index 0000000000..2b1a5e4a3d --- /dev/null +++ b/frontend/src/container/OnboardingContainer/Modules/APM/Java/md-docs/Jboss/Docker/Recommended/jboss-docker-recommended-runApplication.md @@ -0,0 +1,25 @@ +Once you update your Dockerfile, you can build and run it using the commands below. + +  + +### Step 1: Build your dockerfile + +Build your docker image + +```bash +docker build -t . +``` + +- `` is the name of your Docker Image + +  + +### Step 2: Run your docker image + +```bash +docker run +``` + +  + +If you encounter any difficulties, please consult the [troubleshooting section](https://signoz.io/docs/instrumentation/jboss/#troubleshooting-your-installation) for assistance. \ No newline at end of file diff --git a/frontend/src/container/OnboardingContainer/Modules/APM/Java/md-docs/Others/Docker/QuickStart/others-docker-quickStart-instrumentApplication.md b/frontend/src/container/OnboardingContainer/Modules/APM/Java/md-docs/Others/Docker/QuickStart/others-docker-quickStart-instrumentApplication.md new file mode 100644 index 0000000000..e4c3ad3de3 --- /dev/null +++ b/frontend/src/container/OnboardingContainer/Modules/APM/Java/md-docs/Others/Docker/QuickStart/others-docker-quickStart-instrumentApplication.md @@ -0,0 +1,27 @@ +#### Requirements +- Java 8 or higher +  + +### Dockerize your application + +Add the following to your Dockerfile + +```bash +... +# Download otel java binary agent using +RUN wget https://github.com/open-telemetry/opentelemetry-java-instrumentation/releases/latest/download/opentelemetry-javaagent.jar -O opentelemetry-javaagent.jar + +# Set environment variables and run your Spring Boot application +ENV OTEL_RESOURCE_ATTRIBUTES="service.name={{MYAPP}}" \ + OTEL_EXPORTER_OTLP_HEADERS="signoz-access-token={{SIGNOZ_INGESTION_KEY}}" \ + OTEL_EXPORTER_OTLP_ENDPOINT="https://ingest.{{REGION}}.signoz.cloud:443" + +# Copy the Spring Boot application JAR file into the container +COPY .jar /app + +# Command to run the Spring Boot application +CMD ["java", "-javaagent:/app/opentelemetry-javaagent.jar", "-jar", "/app/.jar"] +... +``` + + diff --git a/frontend/src/container/OnboardingContainer/Modules/APM/Java/md-docs/Others/Docker/QuickStart/others-docker-quickStart-runApplication.md b/frontend/src/container/OnboardingContainer/Modules/APM/Java/md-docs/Others/Docker/QuickStart/others-docker-quickStart-runApplication.md new file mode 100644 index 0000000000..705f05ec82 --- /dev/null +++ b/frontend/src/container/OnboardingContainer/Modules/APM/Java/md-docs/Others/Docker/QuickStart/others-docker-quickStart-runApplication.md @@ -0,0 +1,27 @@ + +Once you update your Dockerfile, you can build and run it using the commands below. + +  + +### Step 1: Build your dockerfile + +Build your docker image + +```bash +docker build -t . +``` + +- `` is the name of your Docker Image + +  + +### Step 2: Run your docker image + +```bash +docker run +``` + +  + +If you encounter any difficulties, please consult the [troubleshooting section](https://signoz.io/docs/instrumentation/java/#troubleshooting-your-installation) for assistance. + diff --git a/frontend/src/container/OnboardingContainer/Modules/APM/Java/md-docs/Others/Docker/Recommended/others-docker-recommended-installOtelCollector.md b/frontend/src/container/OnboardingContainer/Modules/APM/Java/md-docs/Others/Docker/Recommended/others-docker-recommended-installOtelCollector.md new file mode 100644 index 0000000000..fbeda9c337 --- /dev/null +++ b/frontend/src/container/OnboardingContainer/Modules/APM/Java/md-docs/Others/Docker/Recommended/others-docker-recommended-installOtelCollector.md @@ -0,0 +1,12 @@ +## Setup OpenTelemetry Binary as an agent + +  + +As a first step, you should install the OTel collector Binary according to the instructions provided on [this link](https://signoz.io/docs/tutorial/opentelemetry-binary-usage-in-virtual-machine/). + +  + +Once you are done setting up the OTel collector binary, you can follow the next steps. + +  + diff --git a/frontend/src/container/OnboardingContainer/Modules/APM/Java/md-docs/Others/Docker/Recommended/others-docker-recommended-instrumentApplication.md b/frontend/src/container/OnboardingContainer/Modules/APM/Java/md-docs/Others/Docker/Recommended/others-docker-recommended-instrumentApplication.md new file mode 100644 index 0000000000..cee56ab36f --- /dev/null +++ b/frontend/src/container/OnboardingContainer/Modules/APM/Java/md-docs/Others/Docker/Recommended/others-docker-recommended-instrumentApplication.md @@ -0,0 +1,22 @@ +After setting up the Otel collector agent, follow the steps below to instrument your Java Application + +#### Requirements +- Java 8 or higher +  + +### Dockerize your application + +Add the following to your Dockerfile + +```bash +... +# Download otel java binary agent using +RUN wget https://github.com/open-telemetry/opentelemetry-java-instrumentation/releases/latest/download/opentelemetry-javaagent.jar -O opentelemetry-javaagent.jar + +# Copy the Spring Boot application JAR file into the container +COPY .jar /app + +# Command to run the Spring Boot application +CMD ["java", "-javaagent:/app/opentelemetry-javaagent.jar", "-jar", "/app/.jar"] +... +``` \ No newline at end of file diff --git a/frontend/src/container/OnboardingContainer/Modules/APM/Java/md-docs/Others/Docker/Recommended/others-docker-recommended-runApplication.md b/frontend/src/container/OnboardingContainer/Modules/APM/Java/md-docs/Others/Docker/Recommended/others-docker-recommended-runApplication.md new file mode 100644 index 0000000000..878344e379 --- /dev/null +++ b/frontend/src/container/OnboardingContainer/Modules/APM/Java/md-docs/Others/Docker/Recommended/others-docker-recommended-runApplication.md @@ -0,0 +1,26 @@ +Once you update your Dockerfile, you can build and run it using the commands below. + +  + +### Step 1: Build your dockerfile + +Build your docker image + +```bash +docker build -t . +``` + +- `` is the name of your Docker Image + +  + +### Step 2: Run your docker image + +```bash +docker run +``` + + +  + +If you encounter any difficulties, please consult the [troubleshooting section](https://signoz.io/docs/instrumentation/java/#troubleshooting-your-installation) for assistance. \ No newline at end of file diff --git a/frontend/src/container/OnboardingContainer/Modules/APM/Java/md-docs/SpringBoot/Docker/QuickStart/springBoot-docker-quickStart-instrumentApplication.md b/frontend/src/container/OnboardingContainer/Modules/APM/Java/md-docs/SpringBoot/Docker/QuickStart/springBoot-docker-quickStart-instrumentApplication.md new file mode 100644 index 0000000000..566000f080 --- /dev/null +++ b/frontend/src/container/OnboardingContainer/Modules/APM/Java/md-docs/SpringBoot/Docker/QuickStart/springBoot-docker-quickStart-instrumentApplication.md @@ -0,0 +1,27 @@ + +#### Requirements +- Java 8 or higher + +  + +### Dockerize your application + +Add the following to your Dockerfile + +```bash +... +# Download otel java binary agent using +RUN wget https://github.com/open-telemetry/opentelemetry-java-instrumentation/releases/latest/download/opentelemetry-javaagent.jar -O opentelemetry-javaagent.jar + +# Set environment variables and run your Spring Boot application +ENV OTEL_RESOURCE_ATTRIBUTES="service.name={{MYAPP}}" \ + OTEL_EXPORTER_OTLP_HEADERS="signoz-access-token={{SIGNOZ_INGESTION_KEY}}" \ + OTEL_EXPORTER_OTLP_ENDPOINT="https://ingest.{{REGION}}.signoz.cloud:443" + +# Copy the Spring Boot application JAR file into the container +COPY .jar /app + +# Command to run the Spring Boot application +CMD ["java", "-javaagent:/app/opentelemetry-javaagent.jar", "-jar", "/app/.jar"] +... +``` diff --git a/frontend/src/container/OnboardingContainer/Modules/APM/Java/md-docs/SpringBoot/Docker/QuickStart/springBoot-docker-quickStart-runApplication.md b/frontend/src/container/OnboardingContainer/Modules/APM/Java/md-docs/SpringBoot/Docker/QuickStart/springBoot-docker-quickStart-runApplication.md new file mode 100644 index 0000000000..2f7ed5f264 --- /dev/null +++ b/frontend/src/container/OnboardingContainer/Modules/APM/Java/md-docs/SpringBoot/Docker/QuickStart/springBoot-docker-quickStart-runApplication.md @@ -0,0 +1,28 @@ + +Once you update your Dockerfile, you can build and run it using the commands below. + +  + +### Step 1: Build your dockerfile + +Build your docker image + +```bash +docker build -t . +``` + +- `` is the name of your Docker Image + +  + +### Step 2: Run your docker image + +```bash +docker run +``` + + +  + +If you encounter any difficulties, please consult the [troubleshooting section](https://signoz.io/docs/instrumentation/springboot/#troubleshooting-your-installation) for assistance. + diff --git a/frontend/src/container/OnboardingContainer/Modules/APM/Java/md-docs/SpringBoot/Docker/Recommended/springBoot-docker-recommended-installOtelCollector.md b/frontend/src/container/OnboardingContainer/Modules/APM/Java/md-docs/SpringBoot/Docker/Recommended/springBoot-docker-recommended-installOtelCollector.md new file mode 100644 index 0000000000..fbeda9c337 --- /dev/null +++ b/frontend/src/container/OnboardingContainer/Modules/APM/Java/md-docs/SpringBoot/Docker/Recommended/springBoot-docker-recommended-installOtelCollector.md @@ -0,0 +1,12 @@ +## Setup OpenTelemetry Binary as an agent + +  + +As a first step, you should install the OTel collector Binary according to the instructions provided on [this link](https://signoz.io/docs/tutorial/opentelemetry-binary-usage-in-virtual-machine/). + +  + +Once you are done setting up the OTel collector binary, you can follow the next steps. + +  + diff --git a/frontend/src/container/OnboardingContainer/Modules/APM/Java/md-docs/SpringBoot/Docker/Recommended/springBoot-docker-recommended-instrumentApplication.md b/frontend/src/container/OnboardingContainer/Modules/APM/Java/md-docs/SpringBoot/Docker/Recommended/springBoot-docker-recommended-instrumentApplication.md new file mode 100644 index 0000000000..396d79d18a --- /dev/null +++ b/frontend/src/container/OnboardingContainer/Modules/APM/Java/md-docs/SpringBoot/Docker/Recommended/springBoot-docker-recommended-instrumentApplication.md @@ -0,0 +1,22 @@ +After setting up the Otel collector agent, follow the steps below to instrument your Java Application + +#### Requirements +- Java 8 or higher +  + +### Dockerize your application + +Add the following to your Dockerfile + +```bash +... +# Download otel java binary agent using +RUN wget https://github.com/open-telemetry/opentelemetry-java-instrumentation/releases/latest/download/opentelemetry-javaagent.jar -O opentelemetry-javaagent.jar + +# Copy the Spring Boot application JAR file into the container +COPY .jar /app + +# Command to run the Spring Boot application +CMD ["java", "-javaagent:/app/opentelemetry-javaagent.jar", "-jar", "/app/.jar"] +... +``` diff --git a/frontend/src/container/OnboardingContainer/Modules/APM/Java/md-docs/SpringBoot/Docker/Recommended/springBoot-docker-recommended-runApplication.md b/frontend/src/container/OnboardingContainer/Modules/APM/Java/md-docs/SpringBoot/Docker/Recommended/springBoot-docker-recommended-runApplication.md new file mode 100644 index 0000000000..ed50f80d98 --- /dev/null +++ b/frontend/src/container/OnboardingContainer/Modules/APM/Java/md-docs/SpringBoot/Docker/Recommended/springBoot-docker-recommended-runApplication.md @@ -0,0 +1,26 @@ +Once you update your Dockerfile, you can build and run it using the commands below. + +  + +### Step 1: Build your dockerfile + +Build your docker image + +```bash +docker build -t . +``` + +- `` is the name of your Docker Image + +  + +### Step 2: Run your docker image + +```bash +docker run +``` + + +  + +If you encounter any difficulties, please consult the [troubleshooting section](https://signoz.io/docs/instrumentation/springboot/#troubleshooting-your-installation) for assistance. \ No newline at end of file diff --git a/frontend/src/container/OnboardingContainer/Modules/APM/Java/md-docs/Tomcat/Docker/QuickStart/tomcat-docker-quickStart-instrumentApplication.md b/frontend/src/container/OnboardingContainer/Modules/APM/Java/md-docs/Tomcat/Docker/QuickStart/tomcat-docker-quickStart-instrumentApplication.md new file mode 100644 index 0000000000..a41430deca --- /dev/null +++ b/frontend/src/container/OnboardingContainer/Modules/APM/Java/md-docs/Tomcat/Docker/QuickStart/tomcat-docker-quickStart-instrumentApplication.md @@ -0,0 +1,33 @@ +#### Requirements +- Java 8 or higher +  + +### Create setenv.sh file + +Create a `setenv.sh` file in the same directory as your Dockerfile + +```bash +#!/bin/sh +export CATALINA_OPTS="$CATALINA_OPTS -javaagent:/usr/local/tomcat/opentelemetry-javaagent.jar" +export OTEL_EXPORTER_OTLP_HEADERS="signoz-access-token={{SIGNOZ_INGESTION_KEY}}" +export OTEL_EXPORTER_OTLP_ENDPOINT=https://ingest.{{REGION}}.signoz.cloud:443 +export OTEL_RESOURCE_ATTRIBUTES=service.name={{MYAPP}} +``` + +  + +### Dockerize your application + +Update your Dockerfile with the below commands +```bash +... +# Set working directory. Here /usr/local/tomcat is assumed to be the working directory +WORKDIR /usr/local/tomcat + +# Download otel java binary agent +RUN wget https://github.com/open-telemetry/opentelemetry-java-instrumentation/releases/latest/download/opentelemetry-javaagent.jar -O opentelemetry-javaagent.jar + +# Copy setenv.sh into Tomcat bin directory of the working directory to enable the instrumentation agent +COPY setenv.sh /usr/local/tomcat/bin/ +... +``` diff --git a/frontend/src/container/OnboardingContainer/Modules/APM/Java/md-docs/Tomcat/Docker/QuickStart/tomcat-docker-quickStart-runApplication.md b/frontend/src/container/OnboardingContainer/Modules/APM/Java/md-docs/Tomcat/Docker/QuickStart/tomcat-docker-quickStart-runApplication.md new file mode 100644 index 0000000000..cdfec17bde --- /dev/null +++ b/frontend/src/container/OnboardingContainer/Modules/APM/Java/md-docs/Tomcat/Docker/QuickStart/tomcat-docker-quickStart-runApplication.md @@ -0,0 +1,26 @@ +Once you update your Dockerfile, you can build and run it using the commands below. + +  + +### Step 1: Build your dockerfile + +Build your docker image + +```bash +docker build -t . +``` + +- `` is the name of your Docker Image + +  + +### Step 2: Run your docker image + +```bash +docker run +``` + +  + +If you encounter any difficulties, please consult the [troubleshooting section](https://signoz.io/docs/instrumentation/tomcat/#troubleshooting-your-installation) for assistance. + diff --git a/frontend/src/container/OnboardingContainer/Modules/APM/Java/md-docs/Tomcat/Docker/Recommended/tomcat-docker-recommended-installOtelCollector.md b/frontend/src/container/OnboardingContainer/Modules/APM/Java/md-docs/Tomcat/Docker/Recommended/tomcat-docker-recommended-installOtelCollector.md new file mode 100644 index 0000000000..a659f36474 --- /dev/null +++ b/frontend/src/container/OnboardingContainer/Modules/APM/Java/md-docs/Tomcat/Docker/Recommended/tomcat-docker-recommended-installOtelCollector.md @@ -0,0 +1,96 @@ +## Setup OpenTelemetry Binary as an agent +  + +### Step 1: Download otel-collector tar.gz +```bash +wget https://github.com/open-telemetry/opentelemetry-collector-releases/releases/download/v0.79.0/otelcol-contrib_0.79.0_linux_amd64.tar.gz +``` +  + +### Step 2: Extract otel-collector tar.gz to the `otelcol-contrib` folder +```bash +mkdir otelcol-contrib && tar xvzf otelcol-contrib_0.79.0_linux_amd64.tar.gz -C otelcol-contrib +``` +  + +### Step 3: Create config.yaml in folder otelcol-contrib with the below content in it +```bash +receivers: + otlp: + protocols: + grpc: + endpoint: 0.0.0.0:4317 + http: + endpoint: 0.0.0.0:4318 + hostmetrics: + collection_interval: 60s + scrapers: + cpu: {} + disk: {} + load: {} + filesystem: {} + memory: {} + network: {} + paging: {} + process: + mute_process_name_error: true + mute_process_exe_error: true + mute_process_io_error: true + processes: {} + prometheus: + config: + global: + scrape_interval: 60s + scrape_configs: + - job_name: otel-collector-binary + static_configs: + - targets: + # - localhost:8888 +processors: + batch: + send_batch_size: 1000 + timeout: 10s + # Ref: https://github.com/open-telemetry/opentelemetry-collector-contrib/blob/main/processor/resourcedetectionprocessor/README.md + resourcedetection: + detectors: [env, system] # Before system detector, include ec2 for AWS, gcp for GCP and azure for Azure. + # Using OTEL_RESOURCE_ATTRIBUTES envvar, env detector adds custom labels. + timeout: 2s + system: + hostname_sources: [os] # alternatively, use [dns,os] for setting FQDN as host.name and os as fallback +extensions: + health_check: {} + zpages: {} +exporters: + otlp: + endpoint: "ingest.{{REGION}}.signoz.cloud:443" + tls: + insecure: false + headers: + "signoz-access-token": "{{SIGNOZ_INGESTION_KEY}}" + logging: + verbosity: normal +service: + telemetry: + metrics: + address: 0.0.0.0:8888 + extensions: [health_check, zpages] + pipelines: + metrics: + receivers: [otlp] + processors: [batch] + exporters: [otlp] + metrics/internal: + receivers: [prometheus, hostmetrics] + processors: [resourcedetection, batch] + exporters: [otlp] + traces: + receivers: [otlp] + processors: [batch] + exporters: [otlp] + logs: + receivers: [otlp] + processors: [batch] + exporters: [otlp] +``` + + diff --git a/frontend/src/container/OnboardingContainer/Modules/APM/Java/md-docs/Tomcat/Docker/Recommended/tomcat-docker-recommended-instrumentApplication.md b/frontend/src/container/OnboardingContainer/Modules/APM/Java/md-docs/Tomcat/Docker/Recommended/tomcat-docker-recommended-instrumentApplication.md new file mode 100644 index 0000000000..6c4ffc92d0 --- /dev/null +++ b/frontend/src/container/OnboardingContainer/Modules/APM/Java/md-docs/Tomcat/Docker/Recommended/tomcat-docker-recommended-instrumentApplication.md @@ -0,0 +1,30 @@ +After setting up the Otel collector agent, follow the steps below to instrument your Java Application + +#### Requirements +- Java 8 or higher +  + +Create a `setenv.sh` file in the same directory as your Dockerfile + +```bash +#!/bin/sh +export CATALINA_OPTS="$CATALINA_OPTS -javaagent:/usr/local/tomcat/opentelemetry-javaagent.jar" +``` + +  + +### Dockerize your application + +Update your Dockerfile with the below commands +```bash +... +# Set working directory. Here /usr/local/tomcat is assumed to be the working directory +WORKDIR /usr/local/tomcat + +# Download otel java binary agent +RUN wget https://github.com/open-telemetry/opentelemetry-java-instrumentation/releases/latest/download/opentelemetry-javaagent.jar -O opentelemetry-javaagent.jar + +# Copy setenv.sh into Tomcat bin directory of the working directory to enable the instrumentation agent +COPY setenv.sh /usr/local/tomcat/bin/ +... +``` diff --git a/frontend/src/container/OnboardingContainer/Modules/APM/Java/md-docs/Tomcat/Docker/Recommended/tomcat-docker-recommended-runApplication.md b/frontend/src/container/OnboardingContainer/Modules/APM/Java/md-docs/Tomcat/Docker/Recommended/tomcat-docker-recommended-runApplication.md new file mode 100644 index 0000000000..cdfec17bde --- /dev/null +++ b/frontend/src/container/OnboardingContainer/Modules/APM/Java/md-docs/Tomcat/Docker/Recommended/tomcat-docker-recommended-runApplication.md @@ -0,0 +1,26 @@ +Once you update your Dockerfile, you can build and run it using the commands below. + +  + +### Step 1: Build your dockerfile + +Build your docker image + +```bash +docker build -t . +``` + +- `` is the name of your Docker Image + +  + +### Step 2: Run your docker image + +```bash +docker run +``` + +  + +If you encounter any difficulties, please consult the [troubleshooting section](https://signoz.io/docs/instrumentation/tomcat/#troubleshooting-your-installation) for assistance. + diff --git a/frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/Express/Docker/QuickStart/express-docker-quickStart-runApplication.md b/frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/Express/Docker/QuickStart/express-docker-quickStart-runApplication.md index da54fa79da..82463e6da9 100644 --- a/frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/Express/Docker/QuickStart/express-docker-quickStart-runApplication.md +++ b/frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/Express/Docker/QuickStart/express-docker-quickStart-runApplication.md @@ -10,7 +10,7 @@ Build your docker image docker build -t . ``` -- `<` is the name of your Docker Image +- `` is the name of your Docker Image   diff --git a/frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/Express/Docker/Recommended/express-docker-recommended-runApplication.md b/frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/Express/Docker/Recommended/express-docker-recommended-runApplication.md index da54fa79da..82463e6da9 100644 --- a/frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/Express/Docker/Recommended/express-docker-recommended-runApplication.md +++ b/frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/Express/Docker/Recommended/express-docker-recommended-runApplication.md @@ -10,7 +10,7 @@ Build your docker image docker build -t . ``` -- `<` is the name of your Docker Image +- `` is the name of your Docker Image   diff --git a/frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/NestJS/Docker/QuickStart/nestjs-docker-quickStart-runApplication.md b/frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/NestJS/Docker/QuickStart/nestjs-docker-quickStart-runApplication.md index aaef92765c..4a7af5b04f 100644 --- a/frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/NestJS/Docker/QuickStart/nestjs-docker-quickStart-runApplication.md +++ b/frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/NestJS/Docker/QuickStart/nestjs-docker-quickStart-runApplication.md @@ -10,7 +10,7 @@ Build your docker image docker build -t . ``` -- `<` is the name of your Docker Image +- `` is the name of your Docker Image   diff --git a/frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/NestJS/Docker/Recommended/nestjs-docker-recommended-runApplication.md b/frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/NestJS/Docker/Recommended/nestjs-docker-recommended-runApplication.md index aaef92765c..4a7af5b04f 100644 --- a/frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/NestJS/Docker/Recommended/nestjs-docker-recommended-runApplication.md +++ b/frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/NestJS/Docker/Recommended/nestjs-docker-recommended-runApplication.md @@ -10,7 +10,7 @@ Build your docker image docker build -t . ``` -- `<` is the name of your Docker Image +- `` is the name of your Docker Image   diff --git a/frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/NodeJS/Docker/QuickStart/nodejs-docker-quickStart-runApplication.md b/frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/NodeJS/Docker/QuickStart/nodejs-docker-quickStart-runApplication.md index 04b0ad7d49..d3711d1d13 100644 --- a/frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/NodeJS/Docker/QuickStart/nodejs-docker-quickStart-runApplication.md +++ b/frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/NodeJS/Docker/QuickStart/nodejs-docker-quickStart-runApplication.md @@ -10,7 +10,7 @@ Build your docker image docker build -t . ``` -- `<` is the name of your Docker Image +- `` is the name of your Docker Image   diff --git a/frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/NodeJS/Docker/Recommended/nodejs-docker-recommended-runApplication.md b/frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/NodeJS/Docker/Recommended/nodejs-docker-recommended-runApplication.md index 04b0ad7d49..d3711d1d13 100644 --- a/frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/NodeJS/Docker/Recommended/nodejs-docker-recommended-runApplication.md +++ b/frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/NodeJS/Docker/Recommended/nodejs-docker-recommended-runApplication.md @@ -10,7 +10,7 @@ Build your docker image docker build -t . ``` -- `<` is the name of your Docker Image +- `` is the name of your Docker Image   diff --git a/frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/Others/Docker/QuickStart/others-docker-quickStart-runApplication.md b/frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/Others/Docker/QuickStart/others-docker-quickStart-runApplication.md index 04b0ad7d49..d3711d1d13 100644 --- a/frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/Others/Docker/QuickStart/others-docker-quickStart-runApplication.md +++ b/frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/Others/Docker/QuickStart/others-docker-quickStart-runApplication.md @@ -10,7 +10,7 @@ Build your docker image docker build -t . ``` -- `<` is the name of your Docker Image +- `` is the name of your Docker Image   diff --git a/frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/Others/Docker/Recommended/others-docker-recommended-runApplication.md b/frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/Others/Docker/Recommended/others-docker-recommended-runApplication.md index 04b0ad7d49..d3711d1d13 100644 --- a/frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/Others/Docker/Recommended/others-docker-recommended-runApplication.md +++ b/frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/Others/Docker/Recommended/others-docker-recommended-runApplication.md @@ -10,7 +10,7 @@ Build your docker image docker build -t . ``` -- `<` is the name of your Docker Image +- `` is the name of your Docker Image   diff --git a/frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/ReactJS/Docker/QuickStart/reactjs-docker-quickStart-runApplication.md b/frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/ReactJS/Docker/QuickStart/reactjs-docker-quickStart-runApplication.md index 0f7e5b4957..cc4ce535ff 100644 --- a/frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/ReactJS/Docker/QuickStart/reactjs-docker-quickStart-runApplication.md +++ b/frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/ReactJS/Docker/QuickStart/reactjs-docker-quickStart-runApplication.md @@ -10,7 +10,7 @@ Build your docker image docker build -t . ``` -- `<` is the name of your Docker Image +- `` is the name of your Docker Image   diff --git a/frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/ReactJS/Docker/Recommended/reactjs-docker-recommended-runApplication.md b/frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/ReactJS/Docker/Recommended/reactjs-docker-recommended-runApplication.md index 0f7e5b4957..cc4ce535ff 100644 --- a/frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/ReactJS/Docker/Recommended/reactjs-docker-recommended-runApplication.md +++ b/frontend/src/container/OnboardingContainer/Modules/APM/Javascript/md-docs/ReactJS/Docker/Recommended/reactjs-docker-recommended-runApplication.md @@ -10,7 +10,7 @@ Build your docker image docker build -t . ``` -- `<` is the name of your Docker Image +- `` is the name of your Docker Image   diff --git a/frontend/src/container/OnboardingContainer/Modules/APM/Php/md-docs/Docker/QuickStart/php-docker-quickStart-instrumentApplication.md b/frontend/src/container/OnboardingContainer/Modules/APM/Php/md-docs/Docker/QuickStart/php-docker-quickStart-instrumentApplication.md new file mode 100644 index 0000000000..524f57338a --- /dev/null +++ b/frontend/src/container/OnboardingContainer/Modules/APM/Php/md-docs/Docker/QuickStart/php-docker-quickStart-instrumentApplication.md @@ -0,0 +1,79 @@ +  + +### Step 1: Setup Development Environment +Add these crates just below the `[dependencies]` section of your `cargo.toml` file + +To configure our PHP application to send data, you need to use OpenTelemetry PHP extension. Since the extension is built from the source, you need to have the build tools, which can be installed using the following command: + +**Linux**: +```bash +sudo apt-get install gcc make autoconf +``` + +**MacOs(Homebrew)**: +```bash +brew install gcc make autoconf +``` + +  + +### Step 2: Build the extension + +With our environment set up we can install the extension using [PECL](https://pecl.php.net/): + +```bash +pecl install opentelemetry +``` + +After successfully installing the OpenTelemetry extension, add the extension to php.ini file of your project: + +```bash +[opentelemetry] +extension=opentelemetry.so +``` + +Verify that the extension is enabled by running: + +```bash +php -m | grep opentelemetry +``` + +Running the above command will **output**: + +```bash +opentelemetry +``` + +  + +### Step 3: Add the dependencies + +Add dependencies required to perform automatic instrumentation using this command : + +```bash +composer config allow-plugins.php-http/discovery false +composer require \ + open-telemetry/sdk \ + open-telemetry/exporter-otlp \ + php-http/guzzle7-adapter \ + open-telemetry/transport-grpc +``` + +  + +### Step 4: Dockerize your application + +Update your dockerfile to include the environment variables: + +```bash +... +# Set environment variables +ENV OTEL_PHP_AUTOLOAD_ENABLED=true \ + OTEL_SERVICE_NAME={{MYAPP}} \ + OTEL_TRACES_EXPORTER=otlp \ + OTEL_EXPORTER_OTLP_PROTOCOL=http/protobuf \ + OTEL_EXPORTER_OTLP_ENDPOINT=https://ingest.{{REGION}}.signoz.cloud:443 \ + OTEL_EXPORTER_OTLP_HEADERS=signoz-access-token={{SIGNOZ_INGESTION_KEY}} \ + OTEL_PROPAGATORS=baggage,tracecontext +... +``` \ No newline at end of file diff --git a/frontend/src/container/OnboardingContainer/Modules/APM/Php/md-docs/Docker/QuickStart/php-docker-quickStart-runApplication.md b/frontend/src/container/OnboardingContainer/Modules/APM/Php/md-docs/Docker/QuickStart/php-docker-quickStart-runApplication.md new file mode 100644 index 0000000000..79464ee5ed --- /dev/null +++ b/frontend/src/container/OnboardingContainer/Modules/APM/Php/md-docs/Docker/QuickStart/php-docker-quickStart-runApplication.md @@ -0,0 +1,21 @@ +Once you update your Dockerfile, you can build and run it using the commands below. + +  + +### Step 1: Build your dockerfile + +Build your docker image + +```bash +docker build -t . +``` + +- `` is the name of your Docker Image + +  + +### Step 2: Run your docker image + +```bash +docker run +``` \ No newline at end of file diff --git a/frontend/src/container/OnboardingContainer/Modules/APM/Php/md-docs/Docker/Recommended/php-docker-recommended-installOtelCollector.md b/frontend/src/container/OnboardingContainer/Modules/APM/Php/md-docs/Docker/Recommended/php-docker-recommended-installOtelCollector.md new file mode 100644 index 0000000000..a659f36474 --- /dev/null +++ b/frontend/src/container/OnboardingContainer/Modules/APM/Php/md-docs/Docker/Recommended/php-docker-recommended-installOtelCollector.md @@ -0,0 +1,96 @@ +## Setup OpenTelemetry Binary as an agent +  + +### Step 1: Download otel-collector tar.gz +```bash +wget https://github.com/open-telemetry/opentelemetry-collector-releases/releases/download/v0.79.0/otelcol-contrib_0.79.0_linux_amd64.tar.gz +``` +  + +### Step 2: Extract otel-collector tar.gz to the `otelcol-contrib` folder +```bash +mkdir otelcol-contrib && tar xvzf otelcol-contrib_0.79.0_linux_amd64.tar.gz -C otelcol-contrib +``` +  + +### Step 3: Create config.yaml in folder otelcol-contrib with the below content in it +```bash +receivers: + otlp: + protocols: + grpc: + endpoint: 0.0.0.0:4317 + http: + endpoint: 0.0.0.0:4318 + hostmetrics: + collection_interval: 60s + scrapers: + cpu: {} + disk: {} + load: {} + filesystem: {} + memory: {} + network: {} + paging: {} + process: + mute_process_name_error: true + mute_process_exe_error: true + mute_process_io_error: true + processes: {} + prometheus: + config: + global: + scrape_interval: 60s + scrape_configs: + - job_name: otel-collector-binary + static_configs: + - targets: + # - localhost:8888 +processors: + batch: + send_batch_size: 1000 + timeout: 10s + # Ref: https://github.com/open-telemetry/opentelemetry-collector-contrib/blob/main/processor/resourcedetectionprocessor/README.md + resourcedetection: + detectors: [env, system] # Before system detector, include ec2 for AWS, gcp for GCP and azure for Azure. + # Using OTEL_RESOURCE_ATTRIBUTES envvar, env detector adds custom labels. + timeout: 2s + system: + hostname_sources: [os] # alternatively, use [dns,os] for setting FQDN as host.name and os as fallback +extensions: + health_check: {} + zpages: {} +exporters: + otlp: + endpoint: "ingest.{{REGION}}.signoz.cloud:443" + tls: + insecure: false + headers: + "signoz-access-token": "{{SIGNOZ_INGESTION_KEY}}" + logging: + verbosity: normal +service: + telemetry: + metrics: + address: 0.0.0.0:8888 + extensions: [health_check, zpages] + pipelines: + metrics: + receivers: [otlp] + processors: [batch] + exporters: [otlp] + metrics/internal: + receivers: [prometheus, hostmetrics] + processors: [resourcedetection, batch] + exporters: [otlp] + traces: + receivers: [otlp] + processors: [batch] + exporters: [otlp] + logs: + receivers: [otlp] + processors: [batch] + exporters: [otlp] +``` + + diff --git a/frontend/src/container/OnboardingContainer/Modules/APM/Php/md-docs/Docker/Recommended/php-docker-recommended-instrumentApplication.md b/frontend/src/container/OnboardingContainer/Modules/APM/Php/md-docs/Docker/Recommended/php-docker-recommended-instrumentApplication.md new file mode 100644 index 0000000000..e05b167123 --- /dev/null +++ b/frontend/src/container/OnboardingContainer/Modules/APM/Php/md-docs/Docker/Recommended/php-docker-recommended-instrumentApplication.md @@ -0,0 +1,82 @@ +  + +After setting up the Otel collector agent, follow the steps below to instrument your PHP Application + +### Step 1: Setup Development Environment +Add these crates just below the `[dependencies]` section of your `cargo.toml` file + +To configure our PHP application to send data, you need to use OpenTelemetry PHP extension. Since the extension is built from the source, you need to have the build tools, which can be installed using the following command: + +**Linux**: +```bash +sudo apt-get install gcc make autoconf +``` + +  + +**MacOs(Homebrew)**: +```bash +brew install gcc make autoconf +``` + +  + +### Step 2: Build the extension + +With our environment set up we can install the extension using [PECL](https://pecl.php.net/): + +```bash +pecl install opentelemetry +``` + +After successfully installing the OpenTelemetry extension, add the extension to php.ini file of your project: + +```bash +[opentelemetry] +extension=opentelemetry.so +``` + +Verify that the extension is enabled by running: + +```bash +php -m | grep opentelemetry +``` + +Running the above command will **output**: + +```bash +opentelemetry +``` + +  + +### Step 3: Add the dependencies + +Add dependencies required to perform automatic instrumentation using this command : + +```bash +composer config allow-plugins.php-http/discovery false +composer require \ + open-telemetry/sdk \ + open-telemetry/exporter-otlp \ + php-http/guzzle7-adapter \ + open-telemetry/transport-grpc +``` + +  + +### Step 4: Dockerize your application + +Update your dockerfile to include the environment variables: + +```bash +... +# Set environment variables +ENV OTEL_PHP_AUTOLOAD_ENABLED=true \ + OTEL_SERVICE_NAME={{MYAPP}} \ + OTEL_TRACES_EXPORTER=otlp \ + OTEL_EXPORTER_OTLP_PROTOCOL=http/protobuf \ + OTEL_EXPORTER_OTLP_ENDPOINT= \ + OTEL_PROPAGATORS=baggage,tracecontext +... +``` \ No newline at end of file diff --git a/frontend/src/container/OnboardingContainer/Modules/APM/Php/md-docs/Docker/Recommended/php-docker-recommended-runApplication.md b/frontend/src/container/OnboardingContainer/Modules/APM/Php/md-docs/Docker/Recommended/php-docker-recommended-runApplication.md new file mode 100644 index 0000000000..79464ee5ed --- /dev/null +++ b/frontend/src/container/OnboardingContainer/Modules/APM/Php/md-docs/Docker/Recommended/php-docker-recommended-runApplication.md @@ -0,0 +1,21 @@ +Once you update your Dockerfile, you can build and run it using the commands below. + +  + +### Step 1: Build your dockerfile + +Build your docker image + +```bash +docker build -t . +``` + +- `` is the name of your Docker Image + +  + +### Step 2: Run your docker image + +```bash +docker run +``` \ No newline at end of file diff --git a/frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/Django/Docker/QuickStart/django-docker-quickStart-runApplication.md b/frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/Django/Docker/QuickStart/django-docker-quickStart-runApplication.md index b8fca02afb..3313cd3e77 100644 --- a/frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/Django/Docker/QuickStart/django-docker-quickStart-runApplication.md +++ b/frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/Django/Docker/QuickStart/django-docker-quickStart-runApplication.md @@ -10,7 +10,7 @@ Build your docker image docker build -t . ``` -- `<` is the name of your Docker Image +- `` is the name of your Docker Image   diff --git a/frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/Django/Docker/Recommended/django-docker-recommended-runApplication.md b/frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/Django/Docker/Recommended/django-docker-recommended-runApplication.md index decd5061ae..9f8bceaf35 100644 --- a/frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/Django/Docker/Recommended/django-docker-recommended-runApplication.md +++ b/frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/Django/Docker/Recommended/django-docker-recommended-runApplication.md @@ -8,7 +8,7 @@ Build your docker image docker build -t . ``` -- `<` is the name of your Docker Image +- `` is the name of your Docker Image   diff --git a/frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/Falcon/Docker/QuickStart/falcon-docker-quickStart-runApplication.md b/frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/Falcon/Docker/QuickStart/falcon-docker-quickStart-runApplication.md index f72caf29b7..85c7e803d6 100644 --- a/frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/Falcon/Docker/QuickStart/falcon-docker-quickStart-runApplication.md +++ b/frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/Falcon/Docker/QuickStart/falcon-docker-quickStart-runApplication.md @@ -10,7 +10,7 @@ Build your docker image docker build -t . ``` -- `<` is the name of your Docker Image +- `` is the name of your Docker Image   diff --git a/frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/Falcon/Docker/Recommended/falcon-docker-recommended-runApplication.md b/frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/Falcon/Docker/Recommended/falcon-docker-recommended-runApplication.md index b004b6b742..04edeacb9c 100644 --- a/frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/Falcon/Docker/Recommended/falcon-docker-recommended-runApplication.md +++ b/frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/Falcon/Docker/Recommended/falcon-docker-recommended-runApplication.md @@ -8,7 +8,7 @@ Build your docker image docker build -t . ``` -- `<` is the name of your Docker Image +- `` is the name of your Docker Image   diff --git a/frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/FastAPI/Docker/QuickStart/fastapi-docker-quickStart-runApplication.md b/frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/FastAPI/Docker/QuickStart/fastapi-docker-quickStart-runApplication.md index 97ebbf19e4..14c3d362a3 100644 --- a/frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/FastAPI/Docker/QuickStart/fastapi-docker-quickStart-runApplication.md +++ b/frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/FastAPI/Docker/QuickStart/fastapi-docker-quickStart-runApplication.md @@ -10,7 +10,7 @@ Build your docker image docker build -t . ``` -- `<` is the name of your Docker Image +- `` is the name of your Docker Image   diff --git a/frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/FastAPI/Docker/Recommended/fastapi-docker-recommended-runApplication.md b/frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/FastAPI/Docker/Recommended/fastapi-docker-recommended-runApplication.md index 8d6a614868..ff5d2bc7d6 100644 --- a/frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/FastAPI/Docker/Recommended/fastapi-docker-recommended-runApplication.md +++ b/frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/FastAPI/Docker/Recommended/fastapi-docker-recommended-runApplication.md @@ -8,7 +8,7 @@ Build your docker image docker build -t . ``` -- `<` is the name of your Docker Image +- `` is the name of your Docker Image   diff --git a/frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/Flask/Docker/QuickStart/flask-docker-quickStart-runApplication.md b/frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/Flask/Docker/QuickStart/flask-docker-quickStart-runApplication.md index 51f27ecaa9..3acec0c775 100644 --- a/frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/Flask/Docker/QuickStart/flask-docker-quickStart-runApplication.md +++ b/frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/Flask/Docker/QuickStart/flask-docker-quickStart-runApplication.md @@ -10,7 +10,7 @@ Build your docker image docker build -t . ``` -- `<` is the name of your Docker Image +- `` is the name of your Docker Image   diff --git a/frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/Flask/Docker/Recommended/flask-docker-recommended-runApplication.md b/frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/Flask/Docker/Recommended/flask-docker-recommended-runApplication.md index a392f07fc2..89284f84bb 100644 --- a/frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/Flask/Docker/Recommended/flask-docker-recommended-runApplication.md +++ b/frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/Flask/Docker/Recommended/flask-docker-recommended-runApplication.md @@ -8,7 +8,7 @@ Build your docker image docker build -t . ``` -- `<` is the name of your Docker Image +- `` is the name of your Docker Image   diff --git a/frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/Others/Docker/QuickStart/others-docker-quickStart-runApplication.md b/frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/Others/Docker/QuickStart/others-docker-quickStart-runApplication.md index 53343fa324..5f1e39498c 100644 --- a/frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/Others/Docker/QuickStart/others-docker-quickStart-runApplication.md +++ b/frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/Others/Docker/QuickStart/others-docker-quickStart-runApplication.md @@ -10,7 +10,7 @@ Build your docker image docker build -t . ``` -- `<` is the name of your Docker Image +- `` is the name of your Docker Image   diff --git a/frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/Others/Docker/Recommended/others-docker-recommended-runApplication.md b/frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/Others/Docker/Recommended/others-docker-recommended-runApplication.md index da1e376789..8c91af0742 100644 --- a/frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/Others/Docker/Recommended/others-docker-recommended-runApplication.md +++ b/frontend/src/container/OnboardingContainer/Modules/APM/Python/md-docs/Others/Docker/Recommended/others-docker-recommended-runApplication.md @@ -8,7 +8,7 @@ Build your docker image docker build -t . ``` -- `<` is the name of your Docker Image +- `` is the name of your Docker Image   diff --git a/frontend/src/container/OnboardingContainer/Modules/APM/RubyOnRails/md-docs/Docker/QuickStart/ror-docker-quickStart-instrumentApplication.md b/frontend/src/container/OnboardingContainer/Modules/APM/RubyOnRails/md-docs/Docker/QuickStart/ror-docker-quickStart-instrumentApplication.md new file mode 100644 index 0000000000..f4bd7b9ca2 --- /dev/null +++ b/frontend/src/container/OnboardingContainer/Modules/APM/RubyOnRails/md-docs/Docker/QuickStart/ror-docker-quickStart-instrumentApplication.md @@ -0,0 +1,54 @@ +  + +### Step 1: Install dependencies +Install dependencies related to OpenTelemetry SDK and exporter using gem +```bash +gem install opentelemetry-sdk +gem install opentelemetry-exporter-otlp +gem install opentelemetry-instrumentation-all +``` +  + +Include the required packages into your gemfile +```bash +gem 'opentelemetry-sdk' +gem 'opentelemetry-exporter-otlp' +gem 'opentelemetry-instrumentation-all' +``` +  + +Run the bundle install command: +```bash +bundle install +``` +  + +### Step 2: Initialize the OpenTelemetry SDK +Initialize the otel sdk by adding below lines to `config/environment.rb` of your Ruby on Rails application + +```bash +require 'opentelemetry/sdk' +require_relative 'application' + +OpenTelemetry::SDK.configure do |c| + c.use_all +end + +Rails.application.initialize! +``` + +  + +### Step 3: Dockerize your application + +Update your dockerfile to include the environment variables: + +```bash +... +# Set environment variables +ENV OTEL_EXPORTER=otlp \ + OTEL_SERVICE_NAME={{MYAPP}} \ + OTEL_EXPORTER_OTLP_ENDPOINT=https://ingest.{{REGION}}.signoz.cloud:443 \ + OTEL_EXPORTER_OTLP_HEADERS=signoz-access-token={{SIGNOZ_INGESTION_KEY}} +... +``` \ No newline at end of file diff --git a/frontend/src/container/OnboardingContainer/Modules/APM/RubyOnRails/md-docs/Docker/QuickStart/ror-docker-quickStart-runApplication.md b/frontend/src/container/OnboardingContainer/Modules/APM/RubyOnRails/md-docs/Docker/QuickStart/ror-docker-quickStart-runApplication.md new file mode 100644 index 0000000000..79464ee5ed --- /dev/null +++ b/frontend/src/container/OnboardingContainer/Modules/APM/RubyOnRails/md-docs/Docker/QuickStart/ror-docker-quickStart-runApplication.md @@ -0,0 +1,21 @@ +Once you update your Dockerfile, you can build and run it using the commands below. + +  + +### Step 1: Build your dockerfile + +Build your docker image + +```bash +docker build -t . +``` + +- `` is the name of your Docker Image + +  + +### Step 2: Run your docker image + +```bash +docker run +``` \ No newline at end of file diff --git a/frontend/src/container/OnboardingContainer/Modules/APM/RubyOnRails/md-docs/Docker/Recommended/ror-docker-recommended-installOtelCollector.md b/frontend/src/container/OnboardingContainer/Modules/APM/RubyOnRails/md-docs/Docker/Recommended/ror-docker-recommended-installOtelCollector.md new file mode 100644 index 0000000000..fbeda9c337 --- /dev/null +++ b/frontend/src/container/OnboardingContainer/Modules/APM/RubyOnRails/md-docs/Docker/Recommended/ror-docker-recommended-installOtelCollector.md @@ -0,0 +1,12 @@ +## Setup OpenTelemetry Binary as an agent + +  + +As a first step, you should install the OTel collector Binary according to the instructions provided on [this link](https://signoz.io/docs/tutorial/opentelemetry-binary-usage-in-virtual-machine/). + +  + +Once you are done setting up the OTel collector binary, you can follow the next steps. + +  + diff --git a/frontend/src/container/OnboardingContainer/Modules/APM/RubyOnRails/md-docs/Docker/Recommended/ror-docker-recommended-instrumentApplication.md b/frontend/src/container/OnboardingContainer/Modules/APM/RubyOnRails/md-docs/Docker/Recommended/ror-docker-recommended-instrumentApplication.md new file mode 100644 index 0000000000..a8b5d7b48e --- /dev/null +++ b/frontend/src/container/OnboardingContainer/Modules/APM/RubyOnRails/md-docs/Docker/Recommended/ror-docker-recommended-instrumentApplication.md @@ -0,0 +1,57 @@ +  + +After setting up the Otel collector agent, follow the steps below to instrument your Ruby On Rails Application + +  + +### Step 1: Install dependencies +Install dependencies related to OpenTelemetry SDK and exporter using gem +```bash +gem install opentelemetry-sdk +gem install opentelemetry-exporter-otlp +gem install opentelemetry-instrumentation-all +``` +  + +Include the required packages into your gemfile +```bash +gem 'opentelemetry-sdk' +gem 'opentelemetry-exporter-otlp' +gem 'opentelemetry-instrumentation-all' +``` +  + +Run the bundle install command: +```bash +bundle install +``` +  + +### Step 2: Initialize the OpenTelemetry SDK +Initialize the otel sdk by adding below lines to `config/environment.rb` of your Ruby on Rails application + +```bash +require 'opentelemetry/sdk' +require_relative 'application' + +OpenTelemetry::SDK.configure do |c| + c.use_all +end + +Rails.application.initialize! +``` + +  + +### Step 3: Dockerize your application + +Update your dockerfile to include the environment variables: + +```bash +... +# Set environment variables +ENV OTEL_EXPORTER=otlp \ + OTEL_SERVICE_NAME={{MYAPP}} \ + OTEL_EXPORTER_OTLP_ENDPOINT=http://localhost:4318 +... +``` \ No newline at end of file diff --git a/frontend/src/container/OnboardingContainer/Modules/APM/RubyOnRails/md-docs/Docker/Recommended/ror-docker-recommended-runApplication.md b/frontend/src/container/OnboardingContainer/Modules/APM/RubyOnRails/md-docs/Docker/Recommended/ror-docker-recommended-runApplication.md new file mode 100644 index 0000000000..79464ee5ed --- /dev/null +++ b/frontend/src/container/OnboardingContainer/Modules/APM/RubyOnRails/md-docs/Docker/Recommended/ror-docker-recommended-runApplication.md @@ -0,0 +1,21 @@ +Once you update your Dockerfile, you can build and run it using the commands below. + +  + +### Step 1: Build your dockerfile + +Build your docker image + +```bash +docker build -t . +``` + +- `` is the name of your Docker Image + +  + +### Step 2: Run your docker image + +```bash +docker run +``` \ No newline at end of file diff --git a/frontend/src/container/OnboardingContainer/Modules/APM/Rust/md-docs/Docker/QuickStart/rust-docker-quickStart-instrumentApplication.md b/frontend/src/container/OnboardingContainer/Modules/APM/Rust/md-docs/Docker/QuickStart/rust-docker-quickStart-instrumentApplication.md new file mode 100644 index 0000000000..7061dabd38 --- /dev/null +++ b/frontend/src/container/OnboardingContainer/Modules/APM/Rust/md-docs/Docker/QuickStart/rust-docker-quickStart-instrumentApplication.md @@ -0,0 +1,146 @@ +  + +### Step 1: Add dependencies +Add these crates just below the `[dependencies]` section of your `cargo.toml` file + +```rust +opentelemetry = { version = "0.18.0", features = ["rt-tokio", "metrics", "trace"] } +opentelemetry-otlp = { version = "0.11.0", features = ["trace", "metrics"] } +opentelemetry-semantic-conventions = { version = "0.10.0" } +opentelemetry-proto = { version = "0.1.0"} +tokio = { version = "1", features = ["full"] } +tonic = { version = "0.8.2", features = ["tls-roots"] } +dotenv = "0.15.0" +``` +  + +Use the above crates in entry point of your Rust application, which is generally your `main.rs` file + +```rust +use dotenv::dotenv; +use opentelemetry::global::shutdown_tracer_provider; +use opentelemetry::sdk::Resource; +use opentelemetry::trace::TraceError; +use opentelemetry::{ + global, sdk::trace as sdktrace, + trace::{TraceContextExt, Tracer}, + Context, Key, KeyValue, +}; +use opentelemetry_otlp::WithExportConfig; +use tonic::metadata::{MetadataMap, MetadataValue}; +``` +  + +### Step 2: Initialize tracer and create env file +Add `init_tracer` function to your `main.rs` file. It initializes an OpenTelemetry tracer with the OpenTelemetry OTLP exporter which is sending data to SigNoz Cloud. + +```rust +fn init_tracer() -> Result { + let signoz_access_token = std::env::var("SIGNOZ_ACCESS_TOKEN").expect("SIGNOZ_ACCESS_TOKEN not set"); + let mut metadata = MetadataMap::new(); + metadata.insert( + "signoz-access-token", + MetadataValue::from_str(&signoz_access_token).unwrap(), + ); + opentelemetry_otlp::new_pipeline() + .tracing() + .with_exporter( + opentelemetry_otlp::new_exporter() + .tonic() + .with_metadata(metadata) + .with_endpoint(std::env::var("SIGNOZ_ENDPOINT").expect("SIGNOZ_ENDPOINT not set")), + ) + .with_trace_config( + sdktrace::config().with_resource(Resource::new(vec![ + KeyValue::new( + opentelemetry_semantic_conventions::resource::SERVICE_NAME, + std::env::var("APP_NAME").expect("APP_NAME not set"), + ), + ])), + ) + .install_batch(opentelemetry::runtime::Tokio) +} +``` + +After adding the above function in your `main.rs` file, create an `.env` file in root of your app. The structure could look like this : + +```bash +project_root/ +|-- Cargo.toml +|-- src/ +| |-- main.rs +|-- .env +``` + +In your environment file, paste the below variables which will be used in the next steps. + +```rust +PORT=3000 // If it is a web app pass port or else you can ignore this variable +APP_NAME={{MYAPP}} +SIGNOZ_ENDPOINT=https://ingest.{{REGION}}.signoz.cloud:443/v1/traces +SIGNOZ_ACCESS_TOKEN={{SIGNOZ_INGESTION_KEY}} +``` + +### Step 3: Add OpenTelemetry instrumentation + + +Call the `init_tracer` function inside `main()` at starting so that as soon as your rust application starts, tracer will be available globally. + +```rust +dotenv().ok(); +let _ = init_tracer(); +``` + +Modify your `main()` function from + +```rust +fn main(){ + //rest of the code +} +``` + +  + +to + +```rust +#[tokio::main] +async fn main() { + //rest of the code +} +``` + +Add the below code block within a function or a section of your code where you're setting up and using the tracer for distributed tracing. After adding the below code block you can send traces to SigNoz Cloud + +```rust + let tracer = global::tracer("global_tracer"); + let _cx = Context::new(); + + tracer.in_span("operation", |cx| { + let span = cx.span(); + span.set_attribute(Key::new("KEY").string("value")); + + span.add_event( + format!("Operations"), + vec![ + Key::new("SigNoz is").string("working!"), + ], + ); + }); + shutdown_tracer_provider() +``` + +The above code block will create a span named operation which sets an attribute and an event to it saying "SigNoz is working!". + +  + +### Step 4: Dockerize your application + +Update your Dockerfile to include the `.env` file created above + +```bash +... +# Copy your .env file +COPY .env . +... +``` \ No newline at end of file diff --git a/frontend/src/container/OnboardingContainer/Modules/APM/Rust/md-docs/Docker/QuickStart/rust-docker-quickStart-runApplication.md b/frontend/src/container/OnboardingContainer/Modules/APM/Rust/md-docs/Docker/QuickStart/rust-docker-quickStart-runApplication.md new file mode 100644 index 0000000000..ab7a5dbaf8 --- /dev/null +++ b/frontend/src/container/OnboardingContainer/Modules/APM/Rust/md-docs/Docker/QuickStart/rust-docker-quickStart-runApplication.md @@ -0,0 +1,21 @@ +Once you update your Dockerfile, you can build and run it using the commands below. + +  + +### Step 1: Build your dockerfile + +Build your docker image + +```bash +docker build -t . +``` + +- `` is the name of your Docker Image + +  + +### Step 2: Run your docker image + +```bash +docker run +``` diff --git a/frontend/src/container/OnboardingContainer/Modules/APM/Rust/md-docs/Docker/Recommended/rust-docker-recommended-installOtelCollector.md b/frontend/src/container/OnboardingContainer/Modules/APM/Rust/md-docs/Docker/Recommended/rust-docker-recommended-installOtelCollector.md new file mode 100644 index 0000000000..fbeda9c337 --- /dev/null +++ b/frontend/src/container/OnboardingContainer/Modules/APM/Rust/md-docs/Docker/Recommended/rust-docker-recommended-installOtelCollector.md @@ -0,0 +1,12 @@ +## Setup OpenTelemetry Binary as an agent + +  + +As a first step, you should install the OTel collector Binary according to the instructions provided on [this link](https://signoz.io/docs/tutorial/opentelemetry-binary-usage-in-virtual-machine/). + +  + +Once you are done setting up the OTel collector binary, you can follow the next steps. + +  + diff --git a/frontend/src/container/OnboardingContainer/Modules/APM/Rust/md-docs/Docker/Recommended/rust-docker-recommended-instrumentApplication.md b/frontend/src/container/OnboardingContainer/Modules/APM/Rust/md-docs/Docker/Recommended/rust-docker-recommended-instrumentApplication.md new file mode 100644 index 0000000000..05fbf39c75 --- /dev/null +++ b/frontend/src/container/OnboardingContainer/Modules/APM/Rust/md-docs/Docker/Recommended/rust-docker-recommended-instrumentApplication.md @@ -0,0 +1,112 @@ +  + +After setting up the Otel collector agent, follow the steps below to instrument your Rust Application + +### Step 1: Add dependencies +Add these crates just below the `[dependencies]` section of your `cargo.toml` file + +```rust +opentelemetry = { version = "0.18.0", features = ["rt-tokio", "metrics", "trace"] } +opentelemetry-otlp = { version = "0.11.0", features = ["trace", "metrics"] } +opentelemetry-semantic-conventions = { version = "0.10.0" } +opentelemetry-proto = { version = "0.1.0"} +tokio = { version = "1", features = ["full"] } +tonic = { version = "0.8.2", features = ["tls-roots"] } +``` +  + +Use the above crates in entry point of your Rust application, which is generally your `main.rs` file + +```rust +use opentelemetry::global::shutdown_tracer_provider; +use opentelemetry::sdk::Resource; +use opentelemetry::trace::TraceError; +use opentelemetry::{ + global, sdk::trace as sdktrace, + trace::{TraceContextExt, Tracer}, + Context, Key, KeyValue, +}; +use opentelemetry_otlp::WithExportConfig; +use tonic::metadata::{MetadataMap, MetadataValue}; +``` +  + +### Step 2: Initialize tracer +Add `init_tracer` function to your `main.rs` file. It initializes an OpenTelemetry tracer with the OpenTelemetry OTLP exporter which is sending data to SigNoz Cloud. + +```rust +fn init_tracer() -> Result { + opentelemetry_otlp::new_pipeline() + .tracing() + .with_exporter(opentelemetry_otlp::new_exporter().tonic().with_env()) + .with_trace_config( + sdktrace::config().with_resource(Resource::default()), + ) + .install_batch(opentelemetry::runtime::Tokio) +} +``` +### Step 3: Add OpenTelemetry instrumentation + +Call the `init_tracer` function inside `main()` at starting so that as soon as your rust application starts, tracer will be available globally. + +```rust + let _ = init_tracer(); +``` + +Modify your `main()` function from + +```rust +fn main(){ + //rest of the code +} +``` + +  + +to + +```rust +#[tokio::main] +async fn main() { + //rest of the code +} +``` + +Add the below code block within a function or a section of your code where you're setting up and using the tracer for distributed tracing. After adding the below code block you can send traces to SigNoz Cloud + +```rust + let tracer = global::tracer("global_tracer"); + let _cx = Context::new(); + + tracer.in_span("operation", |cx| { + let span = cx.span(); + span.set_attribute(Key::new("KEY").string("value")); + + span.add_event( + format!("Operations"), + vec![ + Key::new("SigNoz is").string("working!"), + ], + ); + }); + shutdown_tracer_provider() +``` + +The above code block will create a span named operation which sets an attribute and an event to it saying "SigNoz is working!". + + +  + +### Step 4: Dockerize your application + +Update your Dockerfile with the Environment variables as follows: + +```bash + +... +# Set necessary environment variables +ENV OTEL_EXPORTER_OTLP_ENDPOINT=http://localhost:4317 \ + OTEL_RESOURCE_ATTRIBUTES=service.name={{MYAPP}} +... + +``` \ No newline at end of file diff --git a/frontend/src/container/OnboardingContainer/Modules/APM/Rust/md-docs/Docker/Recommended/rust-docker-recommended-runApplication.md b/frontend/src/container/OnboardingContainer/Modules/APM/Rust/md-docs/Docker/Recommended/rust-docker-recommended-runApplication.md new file mode 100644 index 0000000000..ab7a5dbaf8 --- /dev/null +++ b/frontend/src/container/OnboardingContainer/Modules/APM/Rust/md-docs/Docker/Recommended/rust-docker-recommended-runApplication.md @@ -0,0 +1,21 @@ +Once you update your Dockerfile, you can build and run it using the commands below. + +  + +### Step 1: Build your dockerfile + +Build your docker image + +```bash +docker build -t . +``` + +- `` is the name of your Docker Image + +  + +### Step 2: Run your docker image + +```bash +docker run +``` diff --git a/frontend/src/container/OnboardingContainer/Modules/APM/Swift/md-docs/Docker/QuickStart/swift-docker-quickStart-instrumentApplication.md b/frontend/src/container/OnboardingContainer/Modules/APM/Swift/md-docs/Docker/QuickStart/swift-docker-quickStart-instrumentApplication.md new file mode 100644 index 0000000000..800e96439d --- /dev/null +++ b/frontend/src/container/OnboardingContainer/Modules/APM/Swift/md-docs/Docker/QuickStart/swift-docker-quickStart-instrumentApplication.md @@ -0,0 +1,71 @@ +  + +### Step 1: Add dependencies + +To configure your Swift application to send data you need to initialize OpenTelemetry. Add these dependency in `Package.swift` file of your project or if you are using XCode then you need to add this [dependency](https://github.com/open-telemetry/opentelemetry-swift) and then import these below dependencies in the main file. + +```swift +import Foundation +import GRPC +import NIO +import NIOSSL +import OpenTelemetryApi +import OpenTelemetryProtocolExporterCommon +import OpenTelemetryProtocolExporterGrpc +import OpenTelemetrySdk +import ResourceExtension +import SignPostIntegration +import StdoutExporter +import ZipkinExporter +``` + +  + +### Step 2: Initialize tracer +Initialize the tracer using the code block below in the `main.swift` file inside the main function or you can create another function for initializing the tracer and call it in some other block of code. + +```swift +var resources = DefaultResources().get() + +let instrumentationScopeName = "{{MYAPP}}" +let instrumentationScopeVersion = "semver:0.1.0" + +let otlpConfiguration: OtlpConfiguration = OtlpConfiguration(timeout: TimeInterval(10), headers: [("signoz-access-token", {{SIGNOZ_INGESTION_KEY}})]) + +let grpcChannel = ClientConnection.usingPlatformAppropriateTLS(for: MultiThreadedEventLoopGroup(numberOfThreads:1)).connect(host: "https://ingest.{{REGION}}.signoz.cloud:443", port: 443) + +let otlpTraceExporter = OtlpTraceExporter(channel: grpcChannel, + config: otlpConfiguration) +let stdoutExporter = StdoutExporter() + +let spanExporter = MultiSpanExporter(spanExporters: [otlpTraceExporter, stdoutExporter]) + +let spanProcessor = SimpleSpanProcessor(spanExporter: spanExporter) +OpenTelemetry.registerTracerProvider(tracerProvider: + TracerProviderBuilder() + .add(spanProcessor: spanProcessor) + .build() +) +``` + + +### Step 3: Add OpenTelemetry instrumentation + +```swift +func doWork() { + let childSpan = tracer.spanBuilder(spanName: "doWork").setSpanKind(spanKind: .client).startSpan() + childSpan.setAttribute(key: sampleKey, value: sampleValue) + Thread.sleep(forTimeInterval: Double.random(in: 0 ..< 10) / 100) + childSpan.end() +} +``` + +  + +If you call this `doWork` function, it will add a trace with span name "doWork" and attributes with key-value pair. You can modify this function according to your needs. + +  + +### Step 4: Dockerize your application + +Since the environment variables like SIGNOZ_INGESTION_KEY, Ingestion URL and Service name are set in the `main.swift` file, you don't need to add any additional steps in your Dockerfile. \ No newline at end of file diff --git a/frontend/src/container/OnboardingContainer/Modules/APM/Swift/md-docs/Docker/QuickStart/swift-docker-quickStart-runApplication.md b/frontend/src/container/OnboardingContainer/Modules/APM/Swift/md-docs/Docker/QuickStart/swift-docker-quickStart-runApplication.md new file mode 100644 index 0000000000..ab7a5dbaf8 --- /dev/null +++ b/frontend/src/container/OnboardingContainer/Modules/APM/Swift/md-docs/Docker/QuickStart/swift-docker-quickStart-runApplication.md @@ -0,0 +1,21 @@ +Once you update your Dockerfile, you can build and run it using the commands below. + +  + +### Step 1: Build your dockerfile + +Build your docker image + +```bash +docker build -t . +``` + +- `` is the name of your Docker Image + +  + +### Step 2: Run your docker image + +```bash +docker run +``` diff --git a/frontend/src/container/OnboardingContainer/Modules/APM/Swift/md-docs/Docker/Recommended/swift-docker-recommended-installOtelCollector.md b/frontend/src/container/OnboardingContainer/Modules/APM/Swift/md-docs/Docker/Recommended/swift-docker-recommended-installOtelCollector.md new file mode 100644 index 0000000000..fbeda9c337 --- /dev/null +++ b/frontend/src/container/OnboardingContainer/Modules/APM/Swift/md-docs/Docker/Recommended/swift-docker-recommended-installOtelCollector.md @@ -0,0 +1,12 @@ +## Setup OpenTelemetry Binary as an agent + +  + +As a first step, you should install the OTel collector Binary according to the instructions provided on [this link](https://signoz.io/docs/tutorial/opentelemetry-binary-usage-in-virtual-machine/). + +  + +Once you are done setting up the OTel collector binary, you can follow the next steps. + +  + diff --git a/frontend/src/container/OnboardingContainer/Modules/APM/Swift/md-docs/Docker/Recommended/swift-docker-recommended-instrumentApplication.md b/frontend/src/container/OnboardingContainer/Modules/APM/Swift/md-docs/Docker/Recommended/swift-docker-recommended-instrumentApplication.md new file mode 100644 index 0000000000..85b2f30d89 --- /dev/null +++ b/frontend/src/container/OnboardingContainer/Modules/APM/Swift/md-docs/Docker/Recommended/swift-docker-recommended-instrumentApplication.md @@ -0,0 +1,76 @@ +  + +After setting up the Otel collector agent, follow the steps below to instrument your Swift Application + +### Step 1: Add dependencies + +To configure your Swift application to send data you need to initialize OpenTelemetry. Add these dependency in `Package.swift` file of your project or if you are using XCode then you need to add this [dependency](https://github.com/open-telemetry/opentelemetry-swift) and then import these below dependencies in the main file. + +```swift +import Foundation +import GRPC +import NIO +import NIOSSL +import OpenTelemetryApi +import OpenTelemetryProtocolExporterCommon +import OpenTelemetryProtocolExporterGrpc +import OpenTelemetrySdk +import ResourceExtension +import SignPostIntegration +import StdoutExporter +import ZipkinExporter +``` + +  + +### Step 2: Initialize tracer +Initialize the tracer using the code block below in the `main.swift` file inside the main function or you can create another function for initializing the tracer and call it in some other block of code. + +```swift +var resources = DefaultResources().get() + +let instrumentationScopeName = "{{MYAPP}}" +let instrumentationScopeVersion = "semver:0.1.0" + +let otlpConfiguration: OtlpConfiguration = OtlpConfiguration(timeout: TimeInterval(10)) + +let grpcChannel = ClientConnection.usingPlatformAppropriateTLS(for: MultiThreadedEventLoopGroup(numberOfThreads:1)).connect(host: , port: 4317) + +let otlpTraceExporter = OtlpTraceExporter(channel: grpcChannel, + config: otlpConfiguration) +let stdoutExporter = StdoutExporter() + +let spanExporter = MultiSpanExporter(spanExporters: [otlpTraceExporter, stdoutExporter]) + +let spanProcessor = SimpleSpanProcessor(spanExporter: spanExporter) +OpenTelemetry.registerTracerProvider(tracerProvider: + TracerProviderBuilder() + .add(spanProcessor: spanProcessor) + .build() +) +``` +- - The endpoint where Otel Collector is running. For ex -> "localhost" + + + + +### Step 3: Add OpenTelemetry instrumentation + +```swift +func doWork() { + let childSpan = tracer.spanBuilder(spanName: "doWork").setSpanKind(spanKind: .client).startSpan() + childSpan.setAttribute(key: sampleKey, value: sampleValue) + Thread.sleep(forTimeInterval: Double.random(in: 0 ..< 10) / 100) + childSpan.end() +} +``` + +  + +If you call this `doWork` function, it will add a trace with span name "doWork" and attributes with key-value pair. You can modify this function according to your needs. + +  + +### Step 4: Dockerize your application + +Since the environment variables like SIGNOZ_INGESTION_KEY, Ingestion URL and Service name are set in the `main.swift` file, you don't need to add any additional steps in your Dockerfile. \ No newline at end of file diff --git a/frontend/src/container/OnboardingContainer/Modules/APM/Swift/md-docs/Docker/Recommended/swift-docker-recommended-runApplication.md b/frontend/src/container/OnboardingContainer/Modules/APM/Swift/md-docs/Docker/Recommended/swift-docker-recommended-runApplication.md new file mode 100644 index 0000000000..ab7a5dbaf8 --- /dev/null +++ b/frontend/src/container/OnboardingContainer/Modules/APM/Swift/md-docs/Docker/Recommended/swift-docker-recommended-runApplication.md @@ -0,0 +1,21 @@ +Once you update your Dockerfile, you can build and run it using the commands below. + +  + +### Step 1: Build your dockerfile + +Build your docker image + +```bash +docker build -t . +``` + +- `` is the name of your Docker Image + +  + +### Step 2: Run your docker image + +```bash +docker run +``` diff --git a/frontend/src/container/OnboardingContainer/constants/apmDocFilePaths.ts b/frontend/src/container/OnboardingContainer/constants/apmDocFilePaths.ts index 485a33382c..f88f39518f 100644 --- a/frontend/src/container/OnboardingContainer/constants/apmDocFilePaths.ts +++ b/frontend/src/container/OnboardingContainer/constants/apmDocFilePaths.ts @@ -9,6 +9,13 @@ // Go-Kubernetes /// /// ROR Done /// /// .NET Start +// dotnet Docker +import APM_dotnet_docker_quickStart_instrumentApplication from '../Modules/APM/Dotnet/md-docs/Docker/QuickStart/dotnet-docker-quickStart-instrumentApplication.md'; +import APM_dotnet_docker_quickStart_runApplication from '../Modules/APM/Dotnet/md-docs/Docker/QuickStart/dotnet-docker-quickStart-runApplication.md'; +// dotnet-LinuxAMD64-recommended +import APM_dotnet_docker_recommendedSteps_setupOtelCollector from '../Modules/APM/Dotnet/md-docs/Docker/Recommended/dotnet-docker-recommended-installOtelCollector.md'; +import APM_dotnet_docker_recommendedSteps_instrumentApplication from '../Modules/APM/Dotnet/md-docs/Docker/Recommended/dotnet-docker-recommended-instrumentApplication.md'; +import APM_dotnet_docker_recommendedSteps_runApplication from '../Modules/APM/Dotnet/md-docs/Docker/Recommended/dotnet-docker-recommended-runApplication.md'; // dotnet-Kubernetes import APM_dotnet_kubernetes_recommendedSteps_setupOtelCollector from '../Modules/APM/Dotnet/md-docs/Kubernetes/dotnet-kubernetes-installOtelCollector.md'; import APM_dotnet_kubernetes_recommendedSteps_instrumentApplication from '../Modules/APM/Dotnet/md-docs/Kubernetes/dotnet-kubernetes-instrumentApplication.md'; @@ -41,6 +48,13 @@ import APM_dotnet_macOsARM64_quickStart_runApplication from '../Modules/APM/Dotn import APM_dotnet_macOsARM64_recommendedSteps_setupOtelCollector from '../Modules/APM/Dotnet/md-docs/MacOsARM64/Recommended/dotnet-macosarm64-recommended-installOtelCollector.md'; import APM_dotnet_macOsARM64_recommendedSteps_instrumentApplication from '../Modules/APM/Dotnet/md-docs/MacOsARM64/Recommended/dotnet-macosarm64-recommended-instrumentApplication.md'; import APM_dotnet_macOsARM64_recommendedSteps_runApplication from '../Modules/APM/Dotnet/md-docs/MacOsARM64/Recommended/dotnet-macosarm64-recommended-runApplication.md'; +// Elixir Docker +import APM_elixir_docker_quickStart_instrumentApplication from '../Modules/APM/Elixir/md-docs/Docker/QuickStart/elixir-docker-quickStart-instrumentApplication.md'; +import APM_elixir_docker_quickStart_runApplication from '../Modules/APM/Elixir/md-docs/Docker/QuickStart/elixir-docker-quickStart-runApplication.md'; +// Elixir-LinuxAMD64-recommended +import APM_elixir_docker_recommendedSteps_setupOtelCollector from '../Modules/APM/Elixir/md-docs/Docker/Recommended/elixir-docker-recommended-installOtelCollector.md'; +import APM_elixir_docker_recommendedSteps_instrumentApplication from '../Modules/APM/Elixir/md-docs/Docker/Recommended/elixir-docker-recommended-instrumentApplication.md'; +import APM_elixir_docker_recommendedSteps_runApplication from '../Modules/APM/Elixir/md-docs/Docker/Recommended/elixir-docker-recommended-runApplication.md'; // Elixir-Kubernetes import APM_elixir_kubernetes_recommendedSteps_setupOtelCollector from '../Modules/APM/Elixir/md-docs/Kubernetes/elixir-kubernetes-installOtelCollector.md'; import APM_elixir_kubernetes_recommendedSteps_instrumentApplication from '../Modules/APM/Elixir/md-docs/Kubernetes/elixir-kubernetes-instrumentApplication.md'; @@ -73,6 +87,14 @@ import APM_elixir_macOsARM64_quickStart_runApplication from '../Modules/APM/Elix import APM_elixir_macOsARM64_recommendedSteps_setupOtelCollector from '../Modules/APM/Elixir/md-docs/MacOsARM64/Recommended/elixir-macosarm64-recommended-installOtelCollector.md'; import APM_elixir_macOsARM64_recommendedSteps_instrumentApplication from '../Modules/APM/Elixir/md-docs/MacOsARM64/Recommended/elixir-macosarm64-recommended-instrumentApplication.md'; import APM_elixir_macOsARM64_recommendedSteps_runApplication from '../Modules/APM/Elixir/md-docs/MacOsARM64/Recommended/elixir-macosarm64-recommended-runApplication.md'; +// Golang Docker +import APM_go_docker_quickStart_instrumentApplication from '../Modules/APM/GoLang/md-docs/Docker/QuickStart/golang-docker-quickStart-instrumentApplication.md'; +import APM_go_docker_quickStart_runApplication from '../Modules/APM/GoLang/md-docs/Docker/QuickStart/golang-docker-quickStart-runApplication.md'; +// Go-LinuxAMD64-recommended +import APM_go_docker_recommendedSteps_setupOtelCollector from '../Modules/APM/GoLang/md-docs/Docker/Recommended/golang-docker-recommended-installOtelCollector.md'; +import APM_go_docker_recommendedSteps_instrumentApplication from '../Modules/APM/GoLang/md-docs/Docker/Recommended/golang-docker-recommended-instrumentApplication.md'; +import APM_go_docker_recommendedSteps_runApplication from '../Modules/APM/GoLang/md-docs/Docker/Recommended/golang-docker-recommended-runApplication.md'; +// Golang Kubernetes import APM_go_kubernetes_recommendedSteps_setupOtelCollector from '../Modules/APM/GoLang/md-docs/Kubernetes/golang-kubernetes-installOtelCollector.md'; import APM_go_kubernetes_recommendedSteps_instrumentApplication from '../Modules/APM/GoLang/md-docs/Kubernetes/golang-kubernetes-instrumentApplication.md'; import APM_go_kubernetes_recommendedSteps_runApplication from '../Modules/APM/GoLang/md-docs/Kubernetes/golang-kubernetes-runApplication.md'; @@ -105,6 +127,13 @@ import APM_go_macOsARM64_recommendedSteps_setupOtelCollector from '../Modules/AP import APM_go_macOsARM64_recommendedSteps_instrumentApplication from '../Modules/APM/GoLang/md-docs/MacOsARM64/Recommended/golang-macosarm64-recommended-instrumentApplication.md'; import APM_go_macOsARM64_recommendedSteps_runApplication from '../Modules/APM/GoLang/md-docs/MacOsARM64/Recommended/golang-macosarm64-recommended-runApplication.md'; // ---------------------------------------------------------------------------- +// JBoss DOcker +import APM_java_jboss_docker_quickStart_instrumentApplication from '../Modules/APM/Java/md-docs/Jboss/Docker/QuickStart/jboss-docker-quickStart-instrumentApplication.md'; +import APM_java_jboss_docker_quickStart_runApplication from '../Modules/APM/Java/md-docs/Jboss/Docker/QuickStart/jboss-docker-quickStart-runApplication.md'; +// Jboss-LinuxAMD64-recommended +import APM_java_jboss_docker_recommendedSteps_setupOtelCollector from '../Modules/APM/Java/md-docs/Jboss/Docker/Recommended/jboss-docker-recommended-installOtelCollector.md'; +import APM_java_jboss_docker_recommendedSteps_instrumentApplication from '../Modules/APM/Java/md-docs/Jboss/Docker/Recommended/jboss-docker-recommended-instrumentApplication.md'; +import APM_java_jboss_docker_recommendedSteps_runApplication from '../Modules/APM/Java/md-docs/Jboss/Docker/Recommended/jboss-docker-recommended-runApplication.md'; // Jboss-Kubernetes import APM_java_jboss_kubernetes_recommendedSteps_setupOtelCollector from '../Modules/APM/Java/md-docs/Jboss/Kubernetes/jboss-kubernetes-installOtelCollector.md'; import APM_java_jboss_kubernetes_recommendedSteps_instrumentApplication from '../Modules/APM/Java/md-docs/Jboss/Kubernetes/jboss-kubernetes-instrumentApplication.md'; @@ -138,6 +167,13 @@ import APM_java_jboss_macOsARM64_recommendedSteps_setupOtelCollector from '../Mo import APM_java_jboss_macOsARM64_recommendedSteps_instrumentApplication from '../Modules/APM/Java/md-docs/Jboss/MacOsARM64/Recommended/jboss-macosarm64-recommended-instrumentApplication.md'; import APM_java_jboss_macOsARM64_recommendedSteps_runApplication from '../Modules/APM/Java/md-docs/Jboss/MacOsARM64/Recommended/jboss-macosarm64-recommended-runApplication.md'; // ---------------------------------------------------------------------------- +// Other Docker +import APM_java_other_docker_quickStart_instrumentApplication from '../Modules/APM/Java/md-docs/Others/Docker/QuickStart/others-docker-quickStart-instrumentApplication.md'; +import APM_java_other_docker_quickStart_runApplication from '../Modules/APM/Java/md-docs/Others/Docker/QuickStart/others-docker-quickStart-runApplication.md'; +// Other-LinuxAMD64-recommended +import APM_java_other_docker_recommendedSteps_setupOtelCollector from '../Modules/APM/Java/md-docs/Others/Docker/Recommended/others-docker-recommended-installOtelCollector.md'; +import APM_java_other_docker_recommendedSteps_instrumentApplication from '../Modules/APM/Java/md-docs/Others/Docker/Recommended/others-docker-recommended-instrumentApplication.md'; +import APM_java_other_docker_recommendedSteps_runApplication from '../Modules/APM/Java/md-docs/Others/Docker/Recommended/others-docker-recommended-runApplication.md'; // Other-Kubernetes import APM_java_other_kubernetes_recommendedSteps_setupOtelCollector from '../Modules/APM/Java/md-docs/Others/Kubernetes/others-kubernetes-installOtelCollector.md'; import APM_java_other_kubernetes_recommendedSteps_instrumentApplication from '../Modules/APM/Java/md-docs/Others/Kubernetes/others-kubernetes-instrumentApplication.md'; @@ -170,6 +206,14 @@ import APM_java_other_macOsARM64_quickStart_runApplication from '../Modules/APM/ import APM_java_other_macOsARM64_recommendedSteps_setupOtelCollector from '../Modules/APM/Java/md-docs/Others/MacOsARM64/Recommended/others-macosarm64-recommended-installOtelCollector.md'; import APM_java_other_macOsARM64_recommendedSteps_instrumentApplication from '../Modules/APM/Java/md-docs/Others/MacOsARM64/Recommended/others-macosarm64-recommended-instrumentApplication.md'; import APM_java_other_macOsARM64_recommendedSteps_runApplication from '../Modules/APM/Java/md-docs/Others/MacOsARM64/Recommended/others-macosarm64-recommended-runApplication.md'; +// SpringBoot Docker +import APM_java_springBoot_docker_quickStart_instrumentApplication from '../Modules/APM/Java/md-docs/SpringBoot/Docker/QuickStart/springBoot-docker-quickStart-instrumentApplication.md'; +import APM_java_springBoot_docker_quickStart_runApplication from '../Modules/APM/Java/md-docs/SpringBoot/Docker/QuickStart/springBoot-docker-quickStart-runApplication.md'; +// SpringBoot-LinuxAMD64-recommended +import APM_java_springBoot_docker_recommendedSteps_setupOtelCollector from '../Modules/APM/Java/md-docs/SpringBoot/Docker/Recommended/springBoot-docker-recommended-installOtelCollector.md'; +import APM_java_springBoot_docker_recommendedSteps_instrumentApplication from '../Modules/APM/Java/md-docs/SpringBoot/Docker/Recommended/springBoot-docker-recommended-instrumentApplication.md'; +import APM_java_springBoot_docker_recommendedSteps_runApplication from '../Modules/APM/Java/md-docs/SpringBoot/Docker/Recommended/springBoot-docker-recommended-runApplication.md'; +// SpringBoot-Kubernetes import APM_java_springBoot_kubernetes_recommendedSteps_setupOtelCollector from '../Modules/APM/Java/md-docs/SpringBoot/Kubernetes/springBoot-kubernetes-installOtelCollector.md'; import APM_java_springBoot_kubernetes_recommendedSteps_instrumentApplication from '../Modules/APM/Java/md-docs/SpringBoot/Kubernetes/springBoot-kubernetes-instrumentApplication.md'; import APM_java_springBoot_kubernetes_recommendedSteps_runApplication from '../Modules/APM/Java/md-docs/SpringBoot/Kubernetes/springBoot-kubernetes-runApplication.md'; @@ -202,6 +246,13 @@ import APM_java_springBoot_macOsARM64_recommendedSteps_setupOtelCollector from ' import APM_java_springBoot_macOsARM64_recommendedSteps_instrumentApplication from '../Modules/APM/Java/md-docs/SpringBoot/MacOsARM64/Recommended/springBoot-macosarm64-recommended-instrumentApplication.md'; import APM_java_springBoot_macOsARM64_recommendedSteps_runApplication from '../Modules/APM/Java/md-docs/SpringBoot/MacOsARM64/Recommended/springBoot-macosarm64-recommended-runApplication.md'; // ---------------------------------------------------------------------------- +// Tomcat Docker +import APM_java_tomcat_docker_quickStart_instrumentApplication from '../Modules/APM/Java/md-docs/Tomcat/Docker/QuickStart/tomcat-docker-quickStart-instrumentApplication.md'; +import APM_java_tomcat_docker_quickStart_runApplication from '../Modules/APM/Java/md-docs/Tomcat/Docker/QuickStart/tomcat-docker-quickStart-runApplication.md'; +// Tomcat-LinuxAMD64-recommended +import APM_java_tomcat_docker_recommendedSteps_setupOtelCollector from '../Modules/APM/Java/md-docs/Tomcat/Docker/Recommended/tomcat-docker-recommended-installOtelCollector.md'; +import APM_java_tomcat_docker_recommendedSteps_instrumentApplication from '../Modules/APM/Java/md-docs/Tomcat/Docker/Recommended/tomcat-docker-recommended-instrumentApplication.md'; +import APM_java_tomcat_docker_recommendedSteps_runApplication from '../Modules/APM/Java/md-docs/Tomcat/Docker/Recommended/tomcat-docker-recommended-runApplication.md'; // Tomcat-Kubernetes import APM_java_tomcat_kubernetes_recommendedSteps_setupOtelCollector from '../Modules/APM/Java/md-docs/Tomcat/Kubernetes/tomcat-kubernetes-installOtelCollector.md'; import APM_java_tomcat_kubernetes_recommendedSteps_instrumentApplication from '../Modules/APM/Java/md-docs/Tomcat/Kubernetes/tomcat-kubernetes-instrumentApplication.md'; @@ -238,6 +289,13 @@ import APM_java_tomcat_macOsARM64_recommendedSteps_runApplication from '../Modul /// ////// Python Done /// ///// JavaScript Start // Express +// Express Docker +import APM_javascript_express_docker_quickStart_instrumentApplication from '../Modules/APM/Javascript/md-docs/Express/Docker/QuickStart/express-docker-quickStart-instrumentApplication.md'; +import APM_javascript_express_docker_quickStart_runApplication from '../Modules/APM/Javascript/md-docs/Express/Docker/QuickStart/express-docker-quickStart-runApplication.md'; +// Express-LinuxAMD64-recommended +import APM_javascript_express_docker_recommendedSteps_setupOtelCollector from '../Modules/APM/Javascript/md-docs/Express/Docker/Recommended/express-docker-recommended-installOtelCollector.md'; +import APM_javascript_express_docker_recommendedSteps_instrumentApplication from '../Modules/APM/Javascript/md-docs/Express/Docker/Recommended/express-docker-recommended-instrumentApplication.md'; +import APM_javascript_express_docker_recommendedSteps_runApplication from '../Modules/APM/Javascript/md-docs/Express/Docker/Recommended/express-docker-recommended-runApplication.md'; // Express-Kubernetes import APM_javascript_express_kubernetes_recommendedSteps_setupOtelCollector from '../Modules/APM/Javascript/md-docs/Express/Kubernetes/express-kubernetes-installOtelCollector.md'; import APM_javascript_express_kubernetes_recommendedSteps_instrumentApplication from '../Modules/APM/Javascript/md-docs/Express/Kubernetes/express-kubernetes-instrumentApplication.md'; @@ -272,6 +330,13 @@ import APM_javascript_express_macOsARM64_recommendedSteps_instrumentApplication import APM_javascript_express_macOsARM64_recommendedSteps_runApplication from '../Modules/APM/Javascript/md-docs/Express/MacOsARM64/Recommended/express-macosarm64-recommended-runApplication.md'; // ---------------------------------------------------------------------------- // NestJS +// NestJS Docker +import APM_javascript_nestjs_docker_quickStart_instrumentApplication from '../Modules/APM/Javascript/md-docs/NestJS/Docker/QuickStart/nestjs-docker-quickStart-instrumentApplication.md'; +import APM_javascript_nestjs_docker_quickStart_runApplication from '../Modules/APM/Javascript/md-docs/NestJS/Docker/QuickStart/nestjs-docker-quickStart-runApplication.md'; +// NestJS-LinuxAMD64-recommended +import APM_javascript_nestjs_docker_recommendedSteps_setupOtelCollector from '../Modules/APM/Javascript/md-docs/NestJS/Docker/Recommended/nestjs-docker-recommended-installOtelCollector.md'; +import APM_javascript_nestjs_docker_recommendedSteps_instrumentApplication from '../Modules/APM/Javascript/md-docs/NestJS/Docker/Recommended/nestjs-docker-recommended-instrumentApplication.md'; +import APM_javascript_nestjs_docker_recommendedSteps_runApplication from '../Modules/APM/Javascript/md-docs/NestJS/Docker/Recommended/nestjs-docker-recommended-runApplication.md'; // NestJS-Kubernetes import APM_javascript_nestjs_kubernetes_recommendedSteps_setupOtelCollector from '../Modules/APM/Javascript/md-docs/NestJS/Kubernetes/nestjs-kubernetes-installOtelCollector.md'; import APM_javascript_nestjs_kubernetes_recommendedSteps_instrumentApplication from '../Modules/APM/Javascript/md-docs/NestJS/Kubernetes/nestjs-kubernetes-instrumentApplication.md'; @@ -306,6 +371,13 @@ import APM_javascript_nestjs_macOsARM64_recommendedSteps_instrumentApplication f import APM_javascript_nestjs_macOsARM64_recommendedSteps_runApplication from '../Modules/APM/Javascript/md-docs/NestJS/MacOsARM64/Recommended/nestjs-macosarm64-recommended-runApplication.md'; // ---------------------------------------------------------------------------- // NodeJS +// NodeJS Docker +import APM_javascript_nodejs_docker_quickStart_instrumentApplication from '../Modules/APM/Javascript/md-docs/NodeJS/Docker/QuickStart/nodejs-docker-quickStart-instrumentApplication.md'; +import APM_javascript_nodejs_docker_quickStart_runApplication from '../Modules/APM/Javascript/md-docs/NodeJS/Docker/QuickStart/nodejs-docker-quickStart-runApplication.md'; +// NodeJS-LinuxAMD64-recommended +import APM_javascript_nodejs_docker_recommendedSteps_setupOtelCollector from '../Modules/APM/Javascript/md-docs/NodeJS/Docker/Recommended/nodejs-docker-recommended-installOtelCollector.md'; +import APM_javascript_nodejs_docker_recommendedSteps_instrumentApplication from '../Modules/APM/Javascript/md-docs/NodeJS/Docker/Recommended/nodejs-docker-recommended-instrumentApplication.md'; +import APM_javascript_nodejs_docker_recommendedSteps_runApplication from '../Modules/APM/Javascript/md-docs/NodeJS/Docker/Recommended/nodejs-docker-recommended-runApplication.md'; // NodeJS-Kubernetes import APM_javascript_nodejs_kubernetes_recommendedSteps_setupOtelCollector from '../Modules/APM/Javascript/md-docs/NodeJS/Kubernetes/nodejs-kubernetes-installOtelCollector.md'; import APM_javascript_nodejs_kubernetes_recommendedSteps_instrumentApplication from '../Modules/APM/Javascript/md-docs/NodeJS/Kubernetes/nodejs-kubernetes-instrumentApplication.md'; @@ -339,6 +411,14 @@ import APM_javascript_nodejs_macOsARM64_recommendedSteps_setupOtelCollector from import APM_javascript_nodejs_macOsARM64_recommendedSteps_instrumentApplication from '../Modules/APM/Javascript/md-docs/NodeJS/MacOsARM64/Recommended/nodejs-macosarm64-recommended-instrumentApplication.md'; import APM_javascript_nodejs_macOsARM64_recommendedSteps_runApplication from '../Modules/APM/Javascript/md-docs/NodeJS/MacOsARM64/Recommended/nodejs-macosarm64-recommended-runApplication.md'; /// // JavaScript Others +// Others Docker +import APM_javascript_others_docker_quickStart_instrumentApplication from '../Modules/APM/Javascript/md-docs/Others/Docker/QuickStart/others-docker-quickStart-instrumentApplication.md'; +import APM_javascript_others_docker_quickStart_runApplication from '../Modules/APM/Javascript/md-docs/Others/Docker/QuickStart/others-docker-quickStart-runApplication.md'; +// // Others-JavaScript-LinuxAMD64-recommended +import APM_javascript_others_docker_recommendedSteps_setupOtelCollector from '../Modules/APM/Javascript/md-docs/Others/Docker/Recommended/others-docker-recommended-installOtelCollector.md'; +import APM_javascript_others_docker_recommendedSteps_instrumentApplication from '../Modules/APM/Javascript/md-docs/Others/Docker/Recommended/others-docker-recommended-instrumentApplication.md'; +import APM_javascript_others_docker_recommendedSteps_runApplication from '../Modules/APM/Javascript/md-docs/Others/Docker/Recommended/others-docker-recommended-runApplication.md'; +// Kubernetes import APM_javascript_others_kubernetes_recommendedSteps_setupOtelCollector from '../Modules/APM/Javascript/md-docs/Others/Kubernetes/others-kubernetes-installOtelCollector.md'; import APM_javascript_others_kubernetes_recommendedSteps_instrumentApplication from '../Modules/APM/Javascript/md-docs/Others/Kubernetes/others-kubernetes-instrumentApplication.md'; import APM_javascript_others_kubernetes_recommendedSteps_runApplication from '../Modules/APM/Javascript/md-docs/Others/Kubernetes/others-kubernetes-runApplication.md'; @@ -371,6 +451,13 @@ import APM_javascript_others_macOsARM64_recommendedSteps_setupOtelCollector from import APM_javascript_others_macOsARM64_recommendedSteps_instrumentApplication from '../Modules/APM/Javascript/md-docs/Others/MacOsARM64/Recommended/others-macosarm64-recommended-instrumentApplication.md'; import APM_javascript_others_macOsARM64_recommendedSteps_runApplication from '../Modules/APM/Javascript/md-docs/Others/MacOsARM64/Recommended/others-macosarm64-recommended-runApplication.md'; // ---------------------------------------------------------------------------- +// ReactJS Docker +import APM_javascript_reactjs_docker_quickStart_instrumentApplication from '../Modules/APM/Javascript/md-docs/ReactJS/Docker/QuickStart/reactjs-docker-quickStart-instrumentApplication.md'; +import APM_javascript_reactjs_docker_quickStart_runApplication from '../Modules/APM/Javascript/md-docs/ReactJS/Docker/QuickStart/reactjs-docker-quickStart-runApplication.md'; +// // ReactJS-LinuxAMD64-recommended +import APM_javascript_reactjs_docker_recommendedSteps_setupOtelCollector from '../Modules/APM/Javascript/md-docs/ReactJS/Docker/Recommended/reactjs-docker-recommended-installOtelCollector.md'; +import APM_javascript_reactjs_docker_recommendedSteps_instrumentApplication from '../Modules/APM/Javascript/md-docs/ReactJS/Docker/Recommended/reactjs-docker-recommended-instrumentApplication.md'; +import APM_javascript_reactjs_docker_recommendedSteps_runApplication from '../Modules/APM/Javascript/md-docs/ReactJS/Docker/Recommended/reactjs-docker-recommended-runApplication.md'; // ReactJS-Kubernetes import APM_javascript_reactjs_kubernetes_recommendedSteps_setupOtelCollector from '../Modules/APM/Javascript/md-docs/ReactJS/Kubernetes/reactjs-kubernetes-installOtelCollector.md'; import APM_javascript_reactjs_kubernetes_recommendedSteps_instrumentApplication from '../Modules/APM/Javascript/md-docs/ReactJS/Kubernetes/reactjs-kubernetes-instrumentApplication.md'; @@ -403,6 +490,13 @@ import APM_javascript_reactjs_macOsARM64_quickStart_runApplication from '../Modu import APM_javascript_reactjs_macOsARM64_recommendedSteps_setupOtelCollector from '../Modules/APM/Javascript/md-docs/ReactJS/MacOsARM64/Recommended/reactjs-macosarm64-recommended-installOtelCollector.md'; import APM_javascript_reactjs_macOsARM64_recommendedSteps_instrumentApplication from '../Modules/APM/Javascript/md-docs/ReactJS/MacOsARM64/Recommended/reactjs-macosarm64-recommended-instrumentApplication.md'; import APM_javascript_reactjs_macOsARM64_recommendedSteps_runApplication from '../Modules/APM/Javascript/md-docs/ReactJS/MacOsARM64/Recommended/reactjs-macosarm64-recommended-runApplication.md'; +// PHP Docker +import APM_php_docker_quickStart_instrumentApplication from '../Modules/APM/Php/md-docs/Docker/QuickStart/php-docker-quickStart-instrumentApplication.md'; +import APM_php_docker_quickStart_runApplication from '../Modules/APM/Php/md-docs/Docker/QuickStart/php-docker-quickStart-runApplication.md'; +// PHP-LinuxAMD64-recommended +import APM_php_docker_recommendedSteps_setupOtelCollector from '../Modules/APM/Php/md-docs/Docker/Recommended/php-docker-recommended-installOtelCollector.md'; +import APM_php_docker_recommendedSteps_instrumentApplication from '../Modules/APM/Php/md-docs/Docker/Recommended/php-docker-recommended-instrumentApplication.md'; +import APM_php_docker_recommendedSteps_runApplication from '../Modules/APM/Php/md-docs/Docker/Recommended/php-docker-recommended-runApplication.md'; // PHP-Kubernetes import APM_php_kubernetes_recommendedSteps_setupOtelCollector from '../Modules/APM/Php/md-docs/Kubernetes/php-kubernetes-installOtelCollector.md'; import APM_php_kubernetes_recommendedSteps_instrumentApplication from '../Modules/APM/Php/md-docs/Kubernetes/php-kubernetes-instrumentApplication.md'; @@ -435,6 +529,13 @@ import APM_php_macOsARM64_quickStart_runApplication from '../Modules/APM/Php/md- import APM_php_macOsARM64_recommendedSteps_setupOtelCollector from '../Modules/APM/Php/md-docs/MacOsARM64/Recommended/php-macosarm64-recommended-installOtelCollector.md'; import APM_php_macOsARM64_recommendedSteps_instrumentApplication from '../Modules/APM/Php/md-docs/MacOsARM64/Recommended/php-macosarm64-recommended-instrumentApplication.md'; import APM_php_macOsARM64_recommendedSteps_runApplication from '../Modules/APM/Php/md-docs/MacOsARM64/Recommended/php-macosarm64-recommended-runApplication.md'; +/// ////// Docker instructions +import APM_python_django_docker_quickStart_instrumentApplication from '../Modules/APM/Python/md-docs/Django/Docker/QuickStart/django-docker-quickStart-instrumentApplication.md'; +import APM_python_django_docker_quickStart_runApplication from '../Modules/APM/Python/md-docs/Django/Docker/QuickStart/django-docker-quickStart-runApplication.md'; +// Django-LinuxAMD64-recommended +import APM_python_django_docker_recommendedSteps_setupOtelCollector from '../Modules/APM/Python/md-docs/Django/Docker/Recommended/django-docker-recommended-installOtelCollector.md'; +import APM_python_django_docker_recommendedSteps_instrumentApplication from '../Modules/APM/Python/md-docs/Django/Docker/Recommended/django-docker-recommended-instrumentApplication.md'; +import APM_python_django_docker_recommendedSteps_runApplication from '../Modules/APM/Python/md-docs/Django/Docker/Recommended/django-docker-recommended-runApplication.md'; /// ////// Javascript Done /// ///// Python Start // Django @@ -472,6 +573,13 @@ import APM_python_django_macOsARM64_recommendedSteps_instrumentApplication from import APM_python_django_macOsARM64_recommendedSteps_runApplication from '../Modules/APM/Python/md-docs/Django/MacOsARM64/Recommended/django-macosarm64-recommended-runApplication.md'; // ---------------------------------------------------------------------------- // Falcon +// Falcon Docker +import APM_python_falcon_docker_quickStart_instrumentApplication from '../Modules/APM/Python/md-docs/Falcon/Docker/QuickStart/falcon-docker-quickStart-instrumentApplication.md'; +import APM_python_falcon_docker_quickStart_runApplication from '../Modules/APM/Python/md-docs/Falcon/Docker/QuickStart/falcon-docker-quickStart-runApplication.md'; +// Falcon-LinuxAMD64-recommended +import APM_python_falcon_docker_recommendedSteps_setupOtelCollector from '../Modules/APM/Python/md-docs/Falcon/Docker/Recommended/falcon-docker-recommended-installOtelCollector.md'; +import APM_python_falcon_docker_recommendedSteps_instrumentApplication from '../Modules/APM/Python/md-docs/Falcon/Docker/Recommended/falcon-docker-recommended-instrumentApplication.md'; +import APM_python_falcon_docker_recommendedSteps_runApplication from '../Modules/APM/Python/md-docs/Falcon/Docker/Recommended/falcon-docker-recommended-runApplication.md'; // Falcon-Kubernetes import APM_python_falcon_kubernetes_recommendedSteps_setupOtelCollector from '../Modules/APM/Python/md-docs/Falcon/Kubernetes/falcon-kubernetes-installOtelCollector.md'; import APM_python_falcon_kubernetes_recommendedSteps_instrumentApplication from '../Modules/APM/Python/md-docs/Falcon/Kubernetes/falcon-kubernetes-instrumentApplication.md'; @@ -506,6 +614,13 @@ import APM_python_falcon_macOsARM64_recommendedSteps_instrumentApplication from import APM_python_falcon_macOsARM64_recommendedSteps_runApplication from '../Modules/APM/Python/md-docs/Falcon/MacOsARM64/Recommended/falcon-macosarm64-recommended-runApplication.md'; // ---------------------------------------------------------------------------- // FastAPI +// FastAPI Docker +import APM_python_fastAPI_docker_quickStart_instrumentApplication from '../Modules/APM/Python/md-docs/FastAPI/Docker/QuickStart/fastapi-docker-quickStart-instrumentApplication.md'; +import APM_python_fastAPI_docker_quickStart_runApplication from '../Modules/APM/Python/md-docs/FastAPI/Docker/QuickStart/fastapi-docker-quickStart-runApplication.md'; +// FastAPI-LinuxAMD64-recommended +import APM_python_fastAPI_docker_recommendedSteps_setupOtelCollector from '../Modules/APM/Python/md-docs/FastAPI/Docker/Recommended/fastapi-docker-recommended-installOtelCollector.md'; +import APM_python_fastAPI_docker_recommendedSteps_instrumentApplication from '../Modules/APM/Python/md-docs/FastAPI/Docker/Recommended/fastapi-docker-recommended-instrumentApplication.md'; +import APM_python_fastAPI_docker_recommendedSteps_runApplication from '../Modules/APM/Python/md-docs/FastAPI/Docker/Recommended/fastapi-docker-recommended-runApplication.md'; // FastAPI-Kubernetes import APM_python_fastAPI_kubernetes_recommendedSteps_setupOtelCollector from '../Modules/APM/Python/md-docs/FastAPI/Kubernetes/fastapi-kubernetes-installOtelCollector.md'; import APM_python_fastAPI_kubernetes_recommendedSteps_instrumentApplication from '../Modules/APM/Python/md-docs/FastAPI/Kubernetes/fastapi-kubernetes-instrumentApplication.md'; @@ -540,6 +655,12 @@ import APM_python_fastAPI_macOsARM64_recommendedSteps_instrumentApplication from import APM_python_fastAPI_macOsARM64_recommendedSteps_runApplication from '../Modules/APM/Python/md-docs/FastAPI/MacOsARM64/Recommended/fastapi-macosarm64-recommended-runApplication.md'; // ---------------------------------------------------------------------------- // Flask +// Flask Docker +import APM_python_flask_docker_quickStart_instrumentApplication from '../Modules/APM/Python/md-docs/Flask/Docker/QuickStart/flask-docker-quickStart-instrumentApplication.md'; +import APM_python_flask_docker_quickStart_runApplication from '../Modules/APM/Python/md-docs/Flask/Docker/QuickStart/flask-docker-quickStart-runApplication.md'; +import APM_python_flask_docker_recommendedSteps_setupOtelCollector from '../Modules/APM/Python/md-docs/Flask/Docker/Recommended/flask-docker-recommended-installOtelCollector.md'; +import APM_python_flask_docker_recommendedSteps_instrumentApplication from '../Modules/APM/Python/md-docs/Flask/Docker/Recommended/flask-docker-recommended-instrumentApplication.md'; +import APM_python_flask_docker_recommendedSteps_runApplication from '../Modules/APM/Python/md-docs/Flask/Docker/Recommended/flask-docker-recommended-runApplication.md'; // Flask-Kubernetes import APM_python_flask_kubernetes_recommendedSteps_setupOtelCollector from '../Modules/APM/Python/md-docs/Flask/Kubernetes/flask-kubernetes-installOtelCollector.md'; import APM_python_flask_kubernetes_recommendedSteps_instrumentApplication from '../Modules/APM/Python/md-docs/Flask/Kubernetes/flask-kubernetes-instrumentApplication.md'; @@ -574,6 +695,13 @@ import APM_python_flask_macOsARM64_recommendedSteps_instrumentApplication from ' import APM_python_flask_macOsARM64_recommendedSteps_runApplication from '../Modules/APM/Python/md-docs/Flask/MacOsARM64/Recommended/flask-macosarm64-recommended-runApplication.md'; // ---------------------------------------------------------------------------- // Others +// Others Docker +import APM_python_other_docker_quickStart_instrumentApplication from '../Modules/APM/Python/md-docs/Others/Docker/QuickStart/others-docker-quickStart-instrumentApplication.md'; +import APM_python_other_docker_quickStart_runApplication from '../Modules/APM/Python/md-docs/Others/Docker/QuickStart/others-docker-quickStart-runApplication.md'; +// Others-LinuxAMD64-recommended +import APM_python_other_docker_recommendedSteps_setupOtelCollector from '../Modules/APM/Python/md-docs/Others/Docker/Recommended/others-docker-recommended-installOtelCollector.md'; +import APM_python_other_docker_recommendedSteps_instrumentApplication from '../Modules/APM/Python/md-docs/Others/Docker/Recommended/others-docker-recommended-instrumentApplication.md'; +import APM_python_other_docker_recommendedSteps_runApplication from '../Modules/APM/Python/md-docs/Others/Docker/Recommended/others-docker-recommended-runApplication.md'; // Others-Kubernetes import APM_python_other_kubernetes_recommendedSteps_setupOtelCollector from '../Modules/APM/Python/md-docs/Others/Kubernetes/others-kubernetes-installOtelCollector.md'; import APM_python_other_kubernetes_recommendedSteps_instrumentApplication from '../Modules/APM/Python/md-docs/Others/Kubernetes/others-kubernetes-instrumentApplication.md'; @@ -608,6 +736,13 @@ import APM_python_other_macOsARM64_recommendedSteps_instrumentApplication from ' import APM_python_other_macOsARM64_recommendedSteps_runApplication from '../Modules/APM/Python/md-docs/Others/MacOsARM64/Recommended/others-macosarm64-recommended-runApplication.md'; // ---------------------------------------------------------------------------- /// ///// ROR Start +// ROR Docker +import APM_rails_docker_quickStart_instrumentApplication from '../Modules/APM/RubyOnRails/md-docs/Docker/QuickStart/ror-docker-quickStart-instrumentApplication.md'; +import APM_rails_docker_quickStart_runApplication from '../Modules/APM/RubyOnRails/md-docs/Docker/QuickStart/ror-docker-quickStart-runApplication.md'; +// ROR-LinuxAMD64-recommended +import APM_rails_docker_recommendedSteps_setupOtelCollector from '../Modules/APM/RubyOnRails/md-docs/Docker/Recommended/ror-docker-recommended-installOtelCollector.md'; +import APM_rails_docker_recommendedSteps_instrumentApplication from '../Modules/APM/RubyOnRails/md-docs/Docker/Recommended/ror-docker-recommended-instrumentApplication.md'; +import APM_rails_docker_recommendedSteps_runApplication from '../Modules/APM/RubyOnRails/md-docs/Docker/Recommended/ror-docker-recommended-runApplication.md'; // ROR-Kubernetes import APM_rails_kubernetes_recommendedSteps_setupOtelCollector from '../Modules/APM/RubyOnRails/md-docs/Kubernetes/ror-kubernetes-installOtelCollector.md'; import APM_rails_kubernetes_recommendedSteps_instrumentApplication from '../Modules/APM/RubyOnRails/md-docs/Kubernetes/ror-kubernetes-instrumentApplication.md'; @@ -640,6 +775,13 @@ import APM_rails_macOsARM64_quickStart_runApplication from '../Modules/APM/RubyO import APM_rails_macOsARM64_recommendedSteps_setupOtelCollector from '../Modules/APM/RubyOnRails/md-docs/MacOsARM64/Recommended/ror-macosarm64-recommended-installOtelCollector.md'; import APM_rails_macOsARM64_recommendedSteps_instrumentApplication from '../Modules/APM/RubyOnRails/md-docs/MacOsARM64/Recommended/ror-macosarm64-recommended-instrumentApplication.md'; import APM_rails_macOsARM64_recommendedSteps_runApplication from '../Modules/APM/RubyOnRails/md-docs/MacOsARM64/Recommended/ror-macosarm64-recommended-runApplication.md'; +// Rust DOcker +import APM_rust_docker_quickStart_instrumentApplication from '../Modules/APM/Rust/md-docs/Docker/QuickStart/rust-docker-quickStart-instrumentApplication.md'; +import APM_rust_docker_quickStart_runApplication from '../Modules/APM/Rust/md-docs/Docker/QuickStart/rust-docker-quickStart-runApplication.md'; +// Rust-LinuxAMD64-recommended +import APM_rust_docker_recommendedSteps_setupOtelCollector from '../Modules/APM/Rust/md-docs/Docker/Recommended/rust-docker-recommended-installOtelCollector.md'; +import APM_rust_docker_recommendedSteps_instrumentApplication from '../Modules/APM/Rust/md-docs/Docker/Recommended/rust-docker-recommended-instrumentApplication.md'; +import APM_rust_docker_recommendedSteps_runApplication from '../Modules/APM/Rust/md-docs/Docker/Recommended/rust-docker-recommended-runApplication.md'; // Rust-Kubernetes import APM_rust_kubernetes_recommendedSteps_setupOtelCollector from '../Modules/APM/Rust/md-docs/Kubernetes/rust-kubernetes-installOtelCollector.md'; import APM_rust_kubernetes_recommendedSteps_instrumentApplication from '../Modules/APM/Rust/md-docs/Kubernetes/rust-kubernetes-instrumentApplication.md'; @@ -672,6 +814,13 @@ import APM_rust_macOsARM64_quickStart_runApplication from '../Modules/APM/Rust/m import APM_rust_macOsARM64_recommendedSteps_setupOtelCollector from '../Modules/APM/Rust/md-docs/MacOsARM64/Recommended/rust-macosarm64-recommended-installOtelCollector.md'; import APM_rust_macOsARM64_recommendedSteps_instrumentApplication from '../Modules/APM/Rust/md-docs/MacOsARM64/Recommended/rust-macosarm64-recommended-instrumentApplication.md'; import APM_rust_macOsARM64_recommendedSteps_runApplication from '../Modules/APM/Rust/md-docs/MacOsARM64/Recommended/rust-macosarm64-recommended-runApplication.md'; +// Swift Docker +import APM_swift_docker_quickStart_instrumentApplication from '../Modules/APM/Swift/md-docs/Docker/QuickStart/swift-docker-quickStart-instrumentApplication.md'; +import APM_swift_docker_quickStart_runApplication from '../Modules/APM/Swift/md-docs/Docker/QuickStart/swift-docker-quickStart-runApplication.md'; +// Swift-LinuxAMD64-recommended +import APM_swift_docker_recommendedSteps_setupOtelCollector from '../Modules/APM/Swift/md-docs/Docker/Recommended/swift-docker-recommended-installOtelCollector.md'; +import APM_swift_docker_recommendedSteps_instrumentApplication from '../Modules/APM/Swift/md-docs/Docker/Recommended/swift-docker-recommended-instrumentApplication.md'; +import APM_swift_docker_recommendedSteps_runApplication from '../Modules/APM/Swift/md-docs/Docker/Recommended/swift-docker-recommended-runApplication.md'; // Swift-Kubernetes import APM_swift_kubernetes_recommendedSteps_setupOtelCollector from '../Modules/APM/Swift/md-docs/Kubernetes/swift-kubernetes-installOtelCollector.md'; import APM_swift_kubernetes_recommendedSteps_instrumentApplication from '../Modules/APM/Swift/md-docs/Kubernetes/swift-kubernetes-instrumentApplication.md'; @@ -1609,4 +1758,153 @@ export const ApmDocFilePaths = { APM_php_macOsARM64_recommendedSteps_setupOtelCollector, APM_php_macOsARM64_recommendedSteps_instrumentApplication, APM_php_macOsARM64_recommendedSteps_runApplication, + + /// ///// Docker Steps + + APM_python_django_docker_quickStart_instrumentApplication, + APM_python_django_docker_quickStart_runApplication, + + APM_python_django_docker_recommendedSteps_setupOtelCollector, + APM_python_django_docker_recommendedSteps_instrumentApplication, + APM_python_django_docker_recommendedSteps_runApplication, + + APM_python_flask_docker_quickStart_instrumentApplication, + APM_python_flask_docker_quickStart_runApplication, + + APM_python_flask_docker_recommendedSteps_setupOtelCollector, + APM_python_flask_docker_recommendedSteps_instrumentApplication, + APM_python_flask_docker_recommendedSteps_runApplication, + + APM_python_fastAPI_docker_quickStart_instrumentApplication, + APM_python_fastAPI_docker_quickStart_runApplication, + + APM_python_fastAPI_docker_recommendedSteps_setupOtelCollector, + APM_python_fastAPI_docker_recommendedSteps_instrumentApplication, + APM_python_fastAPI_docker_recommendedSteps_runApplication, + + APM_python_falcon_docker_quickStart_instrumentApplication, + APM_python_falcon_docker_quickStart_runApplication, + + APM_python_falcon_docker_recommendedSteps_setupOtelCollector, + APM_python_falcon_docker_recommendedSteps_instrumentApplication, + APM_python_falcon_docker_recommendedSteps_runApplication, + + APM_python_other_docker_quickStart_instrumentApplication, + APM_python_other_docker_quickStart_runApplication, + + APM_python_other_docker_recommendedSteps_setupOtelCollector, + APM_python_other_docker_recommendedSteps_instrumentApplication, + APM_python_other_docker_recommendedSteps_runApplication, + + APM_javascript_nodejs_docker_quickStart_instrumentApplication, + APM_javascript_nodejs_docker_quickStart_runApplication, + + APM_javascript_nodejs_docker_recommendedSteps_setupOtelCollector, + APM_javascript_nodejs_docker_recommendedSteps_instrumentApplication, + APM_javascript_nodejs_docker_recommendedSteps_runApplication, + + APM_javascript_nestjs_docker_quickStart_instrumentApplication, + APM_javascript_nestjs_docker_quickStart_runApplication, + + APM_javascript_nestjs_docker_recommendedSteps_instrumentApplication, + APM_javascript_nestjs_docker_recommendedSteps_setupOtelCollector, + APM_javascript_nestjs_docker_recommendedSteps_runApplication, + + APM_javascript_express_docker_quickStart_instrumentApplication, + APM_javascript_express_docker_quickStart_runApplication, + + APM_javascript_express_docker_recommendedSteps_setupOtelCollector, + APM_javascript_express_docker_recommendedSteps_instrumentApplication, + APM_javascript_express_docker_recommendedSteps_runApplication, + + APM_javascript_reactjs_docker_quickStart_instrumentApplication, + APM_javascript_reactjs_docker_quickStart_runApplication, + + APM_javascript_reactjs_docker_recommendedSteps_setupOtelCollector, + APM_javascript_reactjs_docker_recommendedSteps_instrumentApplication, + APM_javascript_reactjs_docker_recommendedSteps_runApplication, + + APM_javascript_others_docker_quickStart_instrumentApplication, + APM_javascript_others_docker_quickStart_runApplication, + + APM_javascript_others_docker_recommendedSteps_setupOtelCollector, + APM_javascript_others_docker_recommendedSteps_instrumentApplication, + APM_javascript_others_docker_recommendedSteps_runApplication, + + APM_java_jboss_docker_quickStart_instrumentApplication, + APM_java_jboss_docker_quickStart_runApplication, + + APM_java_jboss_docker_recommendedSteps_setupOtelCollector, + APM_java_jboss_docker_recommendedSteps_instrumentApplication, + APM_java_jboss_docker_recommendedSteps_runApplication, + + APM_java_springBoot_docker_quickStart_instrumentApplication, + APM_java_springBoot_docker_quickStart_runApplication, + + APM_java_springBoot_docker_recommendedSteps_setupOtelCollector, + APM_java_springBoot_docker_recommendedSteps_instrumentApplication, + APM_java_springBoot_docker_recommendedSteps_runApplication, + + APM_java_tomcat_docker_quickStart_instrumentApplication, + APM_java_tomcat_docker_quickStart_runApplication, + + APM_java_tomcat_docker_recommendedSteps_setupOtelCollector, + APM_java_tomcat_docker_recommendedSteps_instrumentApplication, + APM_java_tomcat_docker_recommendedSteps_runApplication, + + APM_java_other_docker_quickStart_instrumentApplication, + APM_java_other_docker_quickStart_runApplication, + + APM_java_other_docker_recommendedSteps_setupOtelCollector, + APM_java_other_docker_recommendedSteps_instrumentApplication, + APM_java_other_docker_recommendedSteps_runApplication, + + APM_go_docker_quickStart_instrumentApplication, + APM_go_docker_quickStart_runApplication, + + APM_go_docker_recommendedSteps_setupOtelCollector, + APM_go_docker_recommendedSteps_instrumentApplication, + APM_go_docker_recommendedSteps_runApplication, + + APM_rust_docker_quickStart_instrumentApplication, + APM_rust_docker_quickStart_runApplication, + + APM_rust_docker_recommendedSteps_setupOtelCollector, + APM_rust_docker_recommendedSteps_instrumentApplication, + APM_rust_docker_recommendedSteps_runApplication, + + APM_elixir_docker_quickStart_instrumentApplication, + APM_elixir_docker_quickStart_runApplication, + + APM_elixir_docker_recommendedSteps_setupOtelCollector, + APM_elixir_docker_recommendedSteps_instrumentApplication, + APM_elixir_docker_recommendedSteps_runApplication, + + APM_dotnet_docker_quickStart_instrumentApplication, + APM_dotnet_docker_quickStart_runApplication, + + APM_dotnet_docker_recommendedSteps_setupOtelCollector, + APM_dotnet_docker_recommendedSteps_instrumentApplication, + APM_dotnet_docker_recommendedSteps_runApplication, + + APM_rails_docker_quickStart_instrumentApplication, + APM_rails_docker_quickStart_runApplication, + + APM_rails_docker_recommendedSteps_setupOtelCollector, + APM_rails_docker_recommendedSteps_instrumentApplication, + APM_rails_docker_recommendedSteps_runApplication, + + APM_swift_docker_quickStart_instrumentApplication, + APM_swift_docker_quickStart_runApplication, + + APM_swift_docker_recommendedSteps_setupOtelCollector, + APM_swift_docker_recommendedSteps_instrumentApplication, + APM_swift_docker_recommendedSteps_runApplication, + + APM_php_docker_quickStart_instrumentApplication, + APM_php_docker_quickStart_runApplication, + + APM_php_docker_recommendedSteps_setupOtelCollector, + APM_php_docker_recommendedSteps_instrumentApplication, + APM_php_docker_recommendedSteps_runApplication, }; From 0c7e63d7357f76c7e555282e9cc04bec2cded0f8 Mon Sep 17 00:00:00 2001 From: CheetoDa Date: Wed, 3 Apr 2024 04:08:46 +0530 Subject: [PATCH 3/4] chore: saved unsaved files --- ...docker-quickStart-instrumentApplication.md | 2 +- ...docker-recommended-installOtelCollector.md | 92 +------------------ ...ocker-recommended-instrumentApplication.md | 4 +- 3 files changed, 8 insertions(+), 90 deletions(-) diff --git a/frontend/src/container/OnboardingContainer/Modules/APM/Dotnet/md-docs/Docker/QuickStart/dotnet-docker-quickStart-instrumentApplication.md b/frontend/src/container/OnboardingContainer/Modules/APM/Dotnet/md-docs/Docker/QuickStart/dotnet-docker-quickStart-instrumentApplication.md index 1619f2f229..b1df18e512 100644 --- a/frontend/src/container/OnboardingContainer/Modules/APM/Dotnet/md-docs/Docker/QuickStart/dotnet-docker-quickStart-instrumentApplication.md +++ b/frontend/src/container/OnboardingContainer/Modules/APM/Dotnet/md-docs/Docker/QuickStart/dotnet-docker-quickStart-instrumentApplication.md @@ -73,7 +73,7 @@ This is done by configuring an OpenTelemetry [TracerProvider](https://github.com ### Step 3: Dockerize your application -Since the crucial environment variables like SIGNOZ_INGESTION_KEY, Ingestion Endpoint and Service name are set in the `program.cs` file, you don't need to add any additional steps in your Dockerfile. +Since the environment variables like SIGNOZ_INGESTION_KEY, Ingestion Endpoint and Service name are set in the `program.cs` file, you don't need to add any additional steps in your Dockerfile. An **example** of a Dockerfile could look like this: diff --git a/frontend/src/container/OnboardingContainer/Modules/APM/Php/md-docs/Docker/Recommended/php-docker-recommended-installOtelCollector.md b/frontend/src/container/OnboardingContainer/Modules/APM/Php/md-docs/Docker/Recommended/php-docker-recommended-installOtelCollector.md index a659f36474..fbeda9c337 100644 --- a/frontend/src/container/OnboardingContainer/Modules/APM/Php/md-docs/Docker/Recommended/php-docker-recommended-installOtelCollector.md +++ b/frontend/src/container/OnboardingContainer/Modules/APM/Php/md-docs/Docker/Recommended/php-docker-recommended-installOtelCollector.md @@ -1,96 +1,12 @@ ## Setup OpenTelemetry Binary as an agent -  -### Step 1: Download otel-collector tar.gz -```bash -wget https://github.com/open-telemetry/opentelemetry-collector-releases/releases/download/v0.79.0/otelcol-contrib_0.79.0_linux_amd64.tar.gz -```   -### Step 2: Extract otel-collector tar.gz to the `otelcol-contrib` folder -```bash -mkdir otelcol-contrib && tar xvzf otelcol-contrib_0.79.0_linux_amd64.tar.gz -C otelcol-contrib -``` +As a first step, you should install the OTel collector Binary according to the instructions provided on [this link](https://signoz.io/docs/tutorial/opentelemetry-binary-usage-in-virtual-machine/). +   -### Step 3: Create config.yaml in folder otelcol-contrib with the below content in it -```bash -receivers: - otlp: - protocols: - grpc: - endpoint: 0.0.0.0:4317 - http: - endpoint: 0.0.0.0:4318 - hostmetrics: - collection_interval: 60s - scrapers: - cpu: {} - disk: {} - load: {} - filesystem: {} - memory: {} - network: {} - paging: {} - process: - mute_process_name_error: true - mute_process_exe_error: true - mute_process_io_error: true - processes: {} - prometheus: - config: - global: - scrape_interval: 60s - scrape_configs: - - job_name: otel-collector-binary - static_configs: - - targets: - # - localhost:8888 -processors: - batch: - send_batch_size: 1000 - timeout: 10s - # Ref: https://github.com/open-telemetry/opentelemetry-collector-contrib/blob/main/processor/resourcedetectionprocessor/README.md - resourcedetection: - detectors: [env, system] # Before system detector, include ec2 for AWS, gcp for GCP and azure for Azure. - # Using OTEL_RESOURCE_ATTRIBUTES envvar, env detector adds custom labels. - timeout: 2s - system: - hostname_sources: [os] # alternatively, use [dns,os] for setting FQDN as host.name and os as fallback -extensions: - health_check: {} - zpages: {} -exporters: - otlp: - endpoint: "ingest.{{REGION}}.signoz.cloud:443" - tls: - insecure: false - headers: - "signoz-access-token": "{{SIGNOZ_INGESTION_KEY}}" - logging: - verbosity: normal -service: - telemetry: - metrics: - address: 0.0.0.0:8888 - extensions: [health_check, zpages] - pipelines: - metrics: - receivers: [otlp] - processors: [batch] - exporters: [otlp] - metrics/internal: - receivers: [prometheus, hostmetrics] - processors: [resourcedetection, batch] - exporters: [otlp] - traces: - receivers: [otlp] - processors: [batch] - exporters: [otlp] - logs: - receivers: [otlp] - processors: [batch] - exporters: [otlp] -``` +Once you are done setting up the OTel collector binary, you can follow the next steps. +  diff --git a/frontend/src/container/OnboardingContainer/Modules/APM/Php/md-docs/Docker/Recommended/php-docker-recommended-instrumentApplication.md b/frontend/src/container/OnboardingContainer/Modules/APM/Php/md-docs/Docker/Recommended/php-docker-recommended-instrumentApplication.md index e05b167123..cb7b7c81f7 100644 --- a/frontend/src/container/OnboardingContainer/Modules/APM/Php/md-docs/Docker/Recommended/php-docker-recommended-instrumentApplication.md +++ b/frontend/src/container/OnboardingContainer/Modules/APM/Php/md-docs/Docker/Recommended/php-docker-recommended-instrumentApplication.md @@ -79,4 +79,6 @@ ENV OTEL_PHP_AUTOLOAD_ENABLED=true \ OTEL_EXPORTER_OTLP_ENDPOINT= \ OTEL_PROPAGATORS=baggage,tracecontext ... -``` \ No newline at end of file +``` + +- - Endpoint at which the collector is running. Ex. -> `http://localhost:4317` \ No newline at end of file From f8477981d8a76207df658b387f7fdb6f4b25c55f Mon Sep 17 00:00:00 2001 From: CheetoDa Date: Thu, 4 Apr 2024 11:53:46 +0530 Subject: [PATCH 4/4] chore: fixed review comments --- .../Steps/EnvironmentDetails/EnvironmentDetails.tsx | 6 ------ frontend/src/utils/app.ts | 1 - 2 files changed, 7 deletions(-) diff --git a/frontend/src/container/OnboardingContainer/Steps/EnvironmentDetails/EnvironmentDetails.tsx b/frontend/src/container/OnboardingContainer/Steps/EnvironmentDetails/EnvironmentDetails.tsx index 73ceb80037..fe53a1adb1 100644 --- a/frontend/src/container/OnboardingContainer/Steps/EnvironmentDetails/EnvironmentDetails.tsx +++ b/frontend/src/container/OnboardingContainer/Steps/EnvironmentDetails/EnvironmentDetails.tsx @@ -132,12 +132,6 @@ export default function EnvironmentDetails(): JSX.Element { ) { return null; } - if ( - selectedModule?.id !== useCases.APM.id && - environment.id === 'docker' - ) { - return null; - } return ( { const { hostname } = window.location; - return true; return hostname?.endsWith('signoz.cloud'); };