Deploying on Hosts¶
Installing DataKit Agent¶
Before performing link analysis on systems and applications, you need to deploy the Guance DataKit collector on each target host to collect necessary link data.
Enabling the DDTrace Collector¶
DDTrace is used to receive, process, and analyze Tracing protocol data. Execute the following command to enable the DDTrace collector. For other third-party Tracing collector configurations, refer to Integrations.
cp /usr/local/datakit/conf.d/ddtrace/ddtrace.conf.sample /usr/local/datakit/conf.d/ddtrace/ddtrace.conf
After configuration, restart DataKit:
Selecting a Language¶
Java¶
Installing dependencies:
Running the application:
You can run your Java Code through various methods such as IDE, Maven, Gradle, or directly via the java -jar
command. Below is an example of starting the application using the java
command:
java \
-javaagent:/path/to/dd-java-agent.jar \
-Ddd.logs.injection=true \
-Ddd.agent.host=<YOUR-DATAKIT-HOST> \
-Ddd.trace.agent.port=9529 \
-jar path/to/your/app.jar
Parameter configuration:
service.name
: Service name;env
: Environment information of the application service;version
: Version number;- Setting the sampling rate: Enabling this can reduce the actual data volume generated; the range is from 0.0 (0%) to 1.0 (100%);
- Collecting Profiling data: Enabling this allows you to see more runtime information of the application;
- Enabling JVM Metrics collection: Requires enabling the statsd collector simultaneously.
For more parameter configurations, refer to here.
Python¶
Installing dependencies:
Running the application:
DD_LOGS_INJECTION=true \
DD_AGENT_HOST=localhost \
DD_AGENT_PORT=9529 \
ddtrace-run python my_app.py
Parameter configuration:
service.name
: Service name;env
: Environment information of the application service;version
: Version number;- Setting the sampling rate: Enabling this can reduce the actual data volume generated; the range is from 0.0 (0%) to 1.0 (100%);
- Collecting Profiling data: Enabling this allows you to see more runtime information of the application;
- Enabling Python Metrics collection: Requires enabling the statsd collector simultaneously.
For more parameter configurations, refer to here.
Golang¶
Installing dependencies:
Running the application:
package main
import (
"io/ioutil"
"os"
"time"
httptrace "gopkg.in/DataDog/dd-trace-go.v1/contrib/net/http"
"gopkg.in/DataDog/dd-trace-go.v1/ddtrace/tracer"
)
func main() {
tracer.Start(
)
defer tracer.Stop()
// Create a traced mux router
mux := httptrace.NewServeMux()
// Continue using the router as you normally would.
mux.HandleFunc("/", func(w http.ResponseWriter, r *http.Request) {
time.Sleep(time.Second)
w.Write([]byte("Hello World!"))
})
if err := http.ListenAndServe(":18080", mux); err != nil {
log.Fatal(err)
}
}
Parameter configuration:
service.name
: Service name;env
: Environment information of the application service;version
: Version number;- Setting the sampling rate: Enabling this can reduce the actual data volume generated; the range is from 0.0 (0%) to 1.0 (100%);
- Collecting Profiling data: Enabling this allows you to see more runtime information of the application.
For more parameter configurations, refer to here.