influxdata / influxdata/telegraf

unixgram support for StatsD plugin service_address

Open
#11,081 2 comments 0 reactions 0 assignees View on GitHub
area/statsd feature request help wanted size/m
Dominant language
Go
Stars
17.8k
Forks
5.8k
Avg merge
1d 20h
Merged PRs (30d)
161

Description

Hello and thanks for Telegraf,

## Feature Request

Opening a feature request kicks off a discussion.

### Proposal:

Request to add `unixgram` support for StatsD plugin `service_address` if it is not already supported, if it is supported then update the docs and tests.

### Current behavior:

From reading the docs and tests, I *think* the StatsD Input Plugin currently supports UDP or TCP over a `service_address` that is an address and port, the docs and tests do not mention support for:

```
service_address = "unixgram:///tmp/telegraf.sock"
```

(the code looks like it might work with a `unixgram` `service_address`, sorry I have not tested it yet)

### Desired behavior:

Support and update docs for using `unixgram` `service_address` with StatsD plugin.

### Use case:

I have a use case that could update the StatsD Input Plugin **very** frequently and would prefer to use a Unix domain socket to avoid the extra work of sending data through the loopback networking interface. Using a Unix domain socket also allows for greater access control by way of using Unix file permissions to control access to communicate with it.

Ideally it would be possible for the StatsD Input Plugin to listen on both an Internet socket AND a Unix domain socket, as this will make it easier to move from using one to the other. I am only interested in the UDP protocol.

Thanks for any thoughts on this.

Contributor guide

Open the contributing guide

Research direction

Start by locating the StatsD Input Plugin implementation, its service_address handling, and the existing documentation and tests referenced in the issue. Verify whether unixgram already works, then determine the required coverage for UDP over a Unix socket and the requested documentation or tests. Done means the supported behavior is explicit and validated, or the missing support is implemented and tested.

Written by the indexing model from the issue text.

Assessment

Tech stack
go
Domain
backend, networking
Issue type
Feature
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
38/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.