summaryrefslogtreecommitdiffstats
path: root/collectors/python.d.plugin/logind/README.md
blob: 3e2d4c19074cb29528582740d2896b45e87f48a0 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
<!--
title: "systemd-logind monitoring with Netdata"
custom_edit_url: https://github.com/netdata/netdata/edit/master/collectors/python.d.plugin/logind/README.md
sidebar_label: "systemd-logind"
-->

# Systemd-Logind monitoring with Netdata

Monitors active sessions, users, and seats tracked by `systemd-logind` or `elogind`.

It provides the following charts:

1.  **Sessions** Tracks the total number of sessions.

    -   Graphical: Local graphical sessions (running X11, or Wayland, or something else).
    -   Console: Local console sessions.
    -   Remote: Remote sessions.

2.  **Users** Tracks total number of unique user logins of each type.

    -   Graphical
    -   Console
    -   Remote

3.  **Seats** Total number of seats in use.

    -   Seats

## Enable the collector

The `logind` collector is disabled by default. To enable it, use `edit-config` from the Netdata [config
directory](/docs/configure/nodes.md), which is typically at `/etc/netdata`, to edit the `python.d.conf` file.

```bash
cd /etc/netdata   # Replace this path with your Netdata config directory, if different
sudo ./edit-config python.d.conf
```

Change the value of the `logind` setting to `yes`. Save the file and restart the Netdata Agent with `sudo systemctl
restart netdata`, or the appropriate method for your system, to finish enabling the `logind` collector.

## Configuration

This module needs no configuration. Just make sure the `netdata` user
can run the `loginctl` command and get a session list without having to
specify a path.

This will work with any command that can output data in the _exact_
same format as `loginctl list-sessions --no-legend`.  If you have some
other command you want to use that outputs data in this format, you can
specify it using the `command` key like so:

```yaml
command: '/path/to/other/command'
```

Edit the `python.d/logind.conf` configuration file using `edit-config` from the Netdata [config
directory](/docs/configure/nodes.md), which is typically at `/etc/netdata`.

```bash
cd /etc/netdata   # Replace this path with your Netdata config directory, if different
sudo ./edit-config python.d/logind.conf
```

## Notes

-   This module's ability to track logins is dependent on what PAM services
    are configured to register sessions with logind.  In particular, for
    most systems, it will only track TTY logins, local desktop logins,
    and logins through remote shell connections.

-   The users chart counts _usernames_ not UID's.  This is potentially
    important in configurations where multiple users have the same UID.

-   The users chart counts any given user name up to once for _each_ type
    of login.  So if the same user has a graphical and a console login on a
    system, they will show up once in the graphical count, and once in the
    console count.

-   Because the data collection process is rather expensive, this plugin
    is currently disabled by default, and needs to be explicitly enabled in
    `/etc/netdata/python.d.conf` before it will run.

---

[![analytics](https://www.google-analytics.com/collect?v=1&aip=1&t=pageview&_s=1&ds=github&dr=https%3A%2F%2Fgithub.com%2Fnetdata%2Fnetdata&dl=https%3A%2F%2Fmy-netdata.io%2Fgithub%2Fcollectors%2Fpython.d.plugin%2Flogind%2FREADME&_u=MAC~&cid=5792dfd7-8dc4-476b-af31-da2fdb9f93d2&tid=UA-64295674-3)](<>)