1// Unless explicitly stated otherwise all files in this repository are licensed
2// under the Apache License Version 2.0.
3// This product includes software developed at Datadog (https://www.datadoghq.com/).
4// Copyright 2016 Datadog, Inc.
5
6package fiber_test
7
8import (
9	"github.com/gofiber/fiber/v2"
10
11	fibertrace "gopkg.in/DataDog/dd-trace-go.v1/contrib/gofiber/fiber.v2"
12	"gopkg.in/DataDog/dd-trace-go.v1/ddtrace/tracer"
13)
14
15func Example() {
16	// Start the tracer
17	tracer.Start()
18	defer tracer.Stop()
19
20	// Create a fiber v2 Router
21	router := fiber.New()
22
23	// Use the tracer middleware with the default service name "fiber".
24	router.Use(fibertrace.Middleware())
25
26	// Set up some endpoints.
27	router.Get("/", func(c *fiber.Ctx) error {
28		return c.SendString("test")
29	})
30
31	// And start gathering request traces
32	router.Listen(":8080")
33}
34
35func Example_withServiceName() {
36	// Start the tracer
37	tracer.Start()
38	defer tracer.Stop()
39
40	// Create a fiber v2 Router
41	router := fiber.New()
42
43	// Use the tracer middleware with your desired service name.
44	router.Use(fibertrace.Middleware(fibertrace.WithServiceName("fiber")))
45
46	// Set up some endpoints.
47	router.Get("/", func(c *fiber.Ctx) error {
48		return c.SendString("test")
49	})
50
51	// And start gathering request traces
52	router.Listen(":8080")
53}
54