lxd-go-systemd/

directory
v0.0.0-...-ab10d8f Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jan 27, 2016 License: Apache-2.0, Apache-2.0

README

go-systemd

Go bindings to systemd. The project has three packages:

  • activation - for writing and using socket activation from Go
  • dbus - for starting/stopping/inspecting running services and units
  • journal - for writing to systemd's logging service, journal
  • unit - for (de)serialization and comparison of unit files
  • machine1 - for registering machines/containers with systemd

Go docs for the entire project are here:

http://godoc.org/github.com/coreos/go-systemd

Socket Activation

An example HTTP server using socket activation can be quickly setup by following this README on a Linux machine running systemd:

https://github.com/stgraber/lxd-go-systemd/tree/master/examples/activation/httpserver

Journal

Using this package you can submit journal entries directly to systemd's journal taking advantage of features like indexed key/value pairs for each log entry.

D-Bus

The D-Bus API lets you start, stop and introspect systemd units. The API docs are here:

http://godoc.org/github.com/coreos/go-systemd/dbus

Debugging

Create /etc/dbus-1/system-local.conf that looks like this:

<!DOCTYPE busconfig PUBLIC
"-//freedesktop//DTD D-Bus Bus Configuration 1.0//EN"
"http://www.freedesktop.org/standards/dbus/1.0/busconfig.dtd">
<busconfig>
    <policy user="root">
        <allow eavesdrop="true"/>
        <allow eavesdrop="true" send_destination="*"/>
    </policy>
</busconfig>

Directories

Path Synopsis
Package activation implements primitives for systemd socket activation.
Package activation implements primitives for systemd socket activation.
Code forked from Docker project
Code forked from Docker project
Integration with the systemd D-Bus API.
Integration with the systemd D-Bus API.
examples
activation
Activation example used by the activation unit tests.
Activation example used by the activation unit tests.
Package journal provides write bindings to the systemd journal
Package journal provides write bindings to the systemd journal
Integration with the systemd logind API.
Integration with the systemd logind API.
Integration with the systemd machined API.
Integration with the systemd machined API.
Package util contains utility functions related to systemd that applications can use to check things like whether systemd is running.
Package util contains utility functions related to systemd that applications can use to check things like whether systemd is running.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL