Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Define events for the socket source #3204

Closed
3 of 7 tasks
binarylogic opened this issue Jul 25, 2020 · 2 comments · Fixed by #3486
Closed
3 of 7 tasks

Define events for the socket source #3204

binarylogic opened this issue Jul 25, 2020 · 2 comments · Fixed by #3486
Assignees
Labels
domain: observability Anything related to monitoring/observing Vector source: socket Anything `socket` source related type: enhancement A value-adding code change that enhances its existing functionality.

Comments

@binarylogic
Copy link
Contributor

binarylogic commented Jul 25, 2020

As part of finishing https://github.com/timberio/vector-product/issues/14, we need to define internal events for the socket source.

Prior Work

This source was previously instrumented as part of our initial work. But I want to double-check that it is comprehensive.

Defining events

Requirements

  • Add a SocketEventReceived event.
    • Derive a events_processed metric via the emit_metrics method. (example)
    • If possible, derive a bytes_processed metric via the emit_metrics method. (example)
  • Audit and add events for all possible errors. (example)
  • Audit and add events for all component-specific behavior. (example)
  • Ensure that logs in the hot path are rate limited via the rate_limit_secs parameter. (example).
  • Ensure that all log messages start with a capital letter and end with a .. (example)
@binarylogic binarylogic added source: socket Anything `socket` source related type: enhancement A value-adding code change that enhances its existing functionality. domain: observability Anything related to monitoring/observing Vector labels Jul 25, 2020
@bruceg
Copy link
Member

bruceg commented Aug 13, 2020

A couple of questions here.

  1. The socket source defines separate events for the mode of the source, ie TcpEventReceived and UdpEventReceived. Should these be unified into one SocketEventReceived as suggested or left separate?

  2. If we keep separate events, in the socket source, there is an event named UnixSocketEventReceived. This does not match the other events above, however, UnixEventReceived is awkwardly generic, and UdsEventReceived is a little obscure (UNIX domain socket). Should this be renamed or just leave it?

@binarylogic
Copy link
Contributor Author

We should unify the events into a SocketEventReceived event and add a mode attribute that represents the socket mode (tcp, udp, unix).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
domain: observability Anything related to monitoring/observing Vector source: socket Anything `socket` source related type: enhancement A value-adding code change that enhances its existing functionality.
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants