Skip to content
/ gone Public

Golang packages for writing small daemons and servers.

License

Notifications You must be signed in to change notification settings

One-com/gone

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

gone

Golang packages for writing small daemons and servers.

This is not strictly a "framework". The individual packages do not really depend on each other and can be used independently. However, they work well together.

packages

  • log is a drop-in replacement for the standard Go logging library "log" which is fully source code compatible support all the standard library API while at the same time offering advanced logging features through an extended API.

  • sd Manages your socket file descriptors and (if wanted) interacts with Linux systemd socket-activation, FDSTORE and NOTIFY socket - and provides process management if you want the old style fork/kill process replacement reload.

  • http Provides extentions of the standard HTTP library. - Like a dynamic accesslogging middleware and a client side failover virtual Transport

  • daemon Wraps the sd package and a lot of daemon management boilerplate code to make if very easy to start a full featured daemon, doing graceful reload and/or zero-downtime restart/upgrades.

  • metric A fast client side buffered (if needed) metrics library with a statsd sink.

  • jconf Small utility to make parsing of modular JSON config easier, while still being able to serialize the main config object to JSON and see the full config.

  • signals Run a signal handler and call functions based on a signal->function map.

  • netutil A simple generic net.Conn connection pool and a wrapper around net.Listener and net.Dialer to have a reaper go-routine monitor IO activity.