You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Go to file
Kurt Wilson 0ec3c20de0 Merge branch 'develop' of into develop 4 years ago
.ci/appveyor Add AppVeyor testing for Python 3.6 6 years ago
.github Create FUNDING.yml 5 years ago
conf [diskio] Aliases Display Incorrectly/Not at All, and Glances Throws Error on Exit #1618 4 years ago
docker-files [ports] ICMP does not work #1538 5 years ago
docs Convert JPEG to PNG images (for documentation) 4 years ago
glances Merge branch 'develop' of into develop 4 years ago
snap Glances 3.1.4 ready to be released 4 years ago
.coveragerc OS X -> macOS 8 years ago
.gitattributes Better build for the webui to avoid big diffs in PR 8 years ago
.gitignore Ignore .idea folder 5 years ago
.mailmap Add mailmap file ( 7 years ago
.travis.yml Do not use "python install" any more. 5 years ago
AUTHORS Update dep in setup file 5 years ago Add a code of conduct for Glances project's participants #1211 7 years ago 's/P[Ss][Uu]til/psutil/g' 6 years ago
COPYING Strip leading/trailing whitespaces from all files 12 years ago Fix missing file during install 5 years ago
Makefile Add a simple Makefile 6 years ago
NEWS.rst On the road to Glances 3.1.5 4 years ago
README.rst 'chart' extra not provided #1389 5 years ago
appveyor.yml Add AppVeyor testing for Python 3.6 6 years ago
optional-requirements.txt Update dep in setup file 5 years ago
pylint.cfg Add Pylint configuration file 10 years ago
requirements.txt Glances 3.1.4 ready to be released 4 years ago Update dep in setup file 5 years ago Remove file after Python 2.6 deprecation 8 years ago
tox.ini Configure Python 3.6 in Tox 6 years ago Make uninstall script executable. 11 years ago Add optional-requirements.txt and script (realy) 8 years ago Add an unitest for issue #1401 5 years ago Glances 3.1.0 5 years ago Feature request: HDD S.M.A.R.T. reports #1288 (only terminal UI) 5 years ago


Glances - An eye on your system

.. image::

.. image::
    :alt: Github stars

.. image::
    :alt: Downloads

.. image::
    :alt: Linux tests (Travis)

.. image::
    :alt: Windows tests (Appveyor)

.. image::

.. image::

.. image::


**Glances** is a cross-platform monitoring tool which aims to present a
large amount of monitoring information through a curses or Web
based interface. The information dynamically adapts depending on the
size of the user interface.

.. image::

It can also work in client/server mode. Remote monitoring could be done
via terminal, Web interface or API (XML-RPC and RESTful). Stats can also
be exported to files or external time/value databases.

.. image::

Glances is written in Python and uses libraries to grab information from
your system. It is based on an open architecture where developers can
add new plugins or exports modules.


- ``python 2.7,>=3.4``
- ``psutil>=5.3.0`` (better with latest version)

Optional dependencies:

- ``bernhard`` (for the Riemann export module)
- ``bottle`` (for Web server mode)
- ``cassandra-driver`` (for the Cassandra export module)
- ``couchdb`` (for the CouchDB export module)
- ``docker`` (for the Docker monitoring support) [Linux/macOS-only]
- ``elasticsearch`` (for the Elastic Search export module)
- ``hddtemp`` (for HDD temperature monitoring support) [Linux-only]
- ``influxdb`` (for the InfluxDB export module)
- ``kafka-python`` (for the Kafka export module)
- ``netifaces`` (for the IP plugin)
- ``nvidia-ml-py3`` (for the GPU plugin)
- ``pika`` (for the RabbitMQ/ActiveMQ export module)
- ``potsdb`` (for the OpenTSDB export module)
- ``prometheus_client`` (for the Prometheus export module)
- ``py-cpuinfo`` (for the Quicklook CPU info module)
- ``pygal`` (for the graph export module)
- ``pymdstat`` (for RAID support) [Linux-only]
- ``pySMART.smartx`` (for HDD Smart support) [Linux-only]
- ``pysnmp`` (for SNMP support)
- ``pystache`` (for the action script feature)
- ``pyzmq`` (for the ZeroMQ export module)
- ``requests`` (for the Ports, Cloud plugins and RESTful export module)
- ``scandir`` (for the Folders plugin) [Only for Python < 3.5]
- ``statsd`` (for the StatsD export module)
- ``wifi`` (for the wifi plugin) [Linux-only]
- ``zeroconf`` (for the autodiscover mode)

*Note for Python 2.6 users*

Glances no longer supports Python 2.6. Please upgrade
to a minimum Python version of 2.7/3.4+ or downgrade to Glances 2.6.2 (last version
with Python 2.6 support).

*Note for CentOS Linux 6 and 7 users*

Python 2.7 and 3.4 are now available via SCL repositories. See:


There are several methods to test/install Glances on your system. Choose your weapon!

Glances Auto Install script: the total way

To install both dependencies and the latest Glances production ready version
(aka *master* branch), just enter the following command line:

.. code-block:: console

    curl -L | /bin/bash


.. code-block:: console

    wget -O- | /bin/bash

*Note*: This is only supported on some GNU/Linux distributions and Mac OS X.
If you want to support other distributions, please contribute to `glancesautoinstall`_.

PyPI: The simple way

Glances is on ``PyPI``. By using PyPI, you will be using the latest
stable version.

To install, simply use ``pip``:

.. code-block:: console

    pip install glances

*Note*: Python headers are required to install `psutil`_. For example,
on Debian/Ubuntu you need to install first the *python-dev* package.
For Fedora/CentOS/RHEL install first *python-devel* package. For Windows,
just install psutil from the binary installation file.

*Note 2 (for the Wifi plugin)*: If you want to use the Wifi plugin, you need
to install the *wireless-tools* package on your system.

You can also install the following libraries in order to use optional
features (like the Web interface, exports modules...):

.. code-block:: console

    pip install 'glances[action,browser,cloud,cpuinfo,docker,export,folders,gpu,graph,ip,raid,snmp,web,wifi]'

To upgrade Glances to the latest version:

.. code-block:: console

    pip install --upgrade glances
    pip install --upgrade glances[...]

If you need to install Glances in a specific user location, use:

.. code-block:: console

    export PYTHONUSERBASE=~/mylocalpath
    pip install --user glances

Docker: the funny way

A Glances container is available. It includes the latest development
HEAD version. You can use it to monitor your server and all your other

Get the Glances container:

.. code-block:: console

    docker pull nicolargo/glances

Run the container in *console mode*:

.. code-block:: console

    docker run --rm -v /var/run/docker.sock:/var/run/docker.sock:ro --pid host --network host -it

Additionally, if you want to use your own glances.conf file, you can
create your own Dockerfile:

.. code-block:: console

    FROM nicolargo/glances
    COPY glances.conf /glances/conf/glances.conf
    CMD python -m glances -C /glances/conf/glances.conf $GLANCES_OPT

Alternatively, you can specify something along the same lines with
docker run options:

.. code-block:: console

    docker run -v `pwd`/glances.conf:/glances/conf/glances.conf -v /var/run/docker.sock:/var/run/docker.sock:ro --pid host -it

Where \`pwd\`/glances.conf is a local directory containing your glances.conf file.

Run the container in *Web server mode* (notice the `GLANCES_OPT` environment
variable setting parameters for the glances startup command):

.. code-block:: console

    docker run -d --restart="always" -p 61208-61209:61208-61209 -e GLANCES_OPT="-w" -v /var/run/docker.sock:/var/run/docker.sock:ro --pid host


`Glances` is available on many Linux distributions, so you should be
able to install it using your favorite package manager. Be aware that
when you use this method the operating system `package`_ for `Glances`
may not be the latest version.


To install the binary package:

.. code-block:: console

    # pkg install py27-glances

To install Glances from ports:

.. code-block:: console

    # cd /usr/ports/sysutils/py-glances/
    # make install clean


If you do not want to use the glancesautoinstall script, follow this procedure.

macOS users can install Glances using ``Homebrew`` or ``MacPorts``.


.. code-block:: console

    $ brew install glances


.. code-block:: console

    $ sudo port install glances


Install `Python`_ for Windows (Python 2.7.9+ and 3.4+ ship with pip) and
then run the following command:

.. code-block:: console

    $ pip install glances

Alternatively, you could clone the repository and install with the following command.

.. code-block:: console

    $ git clone
    $ cd glances
    $ python install


You need a rooted device and the `Termux`_ application (available on the
Google Play Store).

Start Termux on your device and enter:

.. code-block:: console

    $ apt update
    $ apt upgrade
    $ apt install clang python python-dev
    $ pip install bottle
    $ pip install glances

And start Glances:

.. code-block:: console

    $ glances

You can also run Glances in server mode (-s or -w) in order to remotely
monitor your Android device.


To install Glances from source:

.. code-block:: console

    $ wget -O - | tar xz
    $ cd glances-*
    # python install

*Note*: Python headers are required to install psutil.


An awesome ``Chef`` cookbook is available to monitor your infrastructure: (thanks to Antoine Rouyer)


You can install Glances using ``Puppet``:


A Glances ``Ansible`` role is available:


For the standalone mode, just run:

.. code-block:: console

    $ glances

For the Web server mode, run:

.. code-block:: console

    $ glances -w

and enter the URL ``http://<ip>:61208`` in your favorite web browser.

For the client/server mode, run:

.. code-block:: console

    $ glances -s

on the server side and run:

.. code-block:: console

    $ glances -c <ip>

on the client one.

You can also detect and display all Glances servers available on your
network or defined in the configuration file:

.. code-block:: console

    $ glances --browser

You can also display raw stats on stdout:

.. code-block:: console

    $ glances --stdout cpu.user,mem.used,load
    cpu.user: 30.7
    mem.used: 3278204928
    load: {'cpucore': 4, 'min1': 0.21, 'min5': 0.4, 'min15': 0.27}
    cpu.user: 3.4
    mem.used: 3275251712
    load: {'cpucore': 4, 'min1': 0.19, 'min5': 0.39, 'min15': 0.27}

or in a CSV format thanks to the stdout-csv option:

.. code-block:: console

    $ glances --stdout-csv now,cpu.user,mem.used,load
    2018-12-08 22:04:20 CEST,7.3,5948149760,4,1.04,0.99,1.04
    2018-12-08 22:04:23 CEST,5.4,5949136896,4,1.04,0.99,1.04

and RTFM, always.


For complete documentation have a look at the readthedocs_ website.

If you have any question (after RTFM!), please post it on the official Q&A `forum`_.

Gateway to other services

Glances can export stats to: ``CSV`` file, ``JSON`` file, ``InfluxDB``, ``Cassandra``, ``CouchDB``,
``OpenTSDB``, ``Prometheus``, ``StatsD``, ``ElasticSearch``, ``RabbitMQ/ActiveMQ``,
``ZeroMQ``, ``Kafka``, ``Riemann`` and ``RESTful`` server.

How to contribute ?

If you want to contribute to the Glances project, read this `wiki`_ page.

There is also a chat dedicated to the Glances developers:

.. image::


If this project help you, you can give me a tip ;)

.. image::


Nicolas Hennion (@nicolargo) <>

.. image::


Glances is distributed under the LGPL version 3 license. See ``COPYING`` for more details.

.. _psutil:
.. _glancesautoinstall:
.. _Python:
.. _Termux:
.. _readthedocs:
.. _forum:!forum/glances-users
.. _wiki:
.. _package: