Swift Dogstatsd is a dogstatsd implementation for the popular Vapor framework.
To install Swift Dogstatsd, use Swift Package Manager:
.package(name: "dogstatsd", url: "https://github.com/DataDog/swift-dogstatsd.git", from: "1.0.0")),
.target(name: "App", dependencies: [
.product(name: "Vapor", package: "vapor"),
.product(name: "Dogstatsd", package: "swift-dogstatsd")
])
In configure.swift
:
import Dogstatsd
// Called before your application initializes.
func configure(_ app: Application) throws {
app.dogstatsd.config = .udp(address: "127.0.0.1", port: 8125)
// or
app.dogstatsd.config = .uds(path: "/tmp/dsd.sock")
}
dogstatsd
is available on both Application
and Request
.
import Vapor
func routes(_ app: Application) throws {
app.get { req -> String in
req.dogstatsd.increment("custom.swift.metric", tags: ["env:prod"])
return "It works!"
}
}