Skip to content
Snippets Groups Projects
Commit 77c4652c authored by Stefano Di Frischia's avatar Stefano Di Frischia
Browse files

L2SS-1052: fix documentation

parent 6328f735
No related branches found
No related tags found
1 merge request!480Resolve L2SS-1052 "Reroute to loki"
......@@ -25,7 +25,7 @@ Docker networking
The Docker containers started use a *virtual network* to communicate among each other. This means that:
- Containers address each other by a host name equal to the container name (f.e. ``elk`` for the elk stack, and ``databaseds`` for the TANGO_HOST),
- Containers address each other by a host name equal to the container name (f.e. ``databaseds`` for the TANGO_HOST),
- ``localhost`` cannot be used within the containers to access ports of other containers.
- ``host.docker.internal`` resolves to the actual host running the containers,
- All ports used by external parties need to be exposed explicitly in the docker-compose files. The container must open the same port as is thus exposed, or the port will not be reachable.
......@@ -63,28 +63,26 @@ For more information, see:
Logging
-------------------------
The ELK stack collects the logs from the containers, as well as any external processes that send theirs. It is the *Logstash* part of ELK that is responsible for this. The following interfaces are available for this purpose:
The Logstash pipeline collects the logs from the containers, as well as any external processes that send theirs. The following interfaces are available for this purpose:
+-------------+------------+-------------------------------------------------------------------------------------------------------------+
| Interface | Port | Note |
+=============+============+=============================================================================================================+
| Syslog | 1514/udp | Recommended over TCP, as the ELK stack might be down. |
| Syslog | 1514/udp | Recommended over TCP. |
+-------------+------------+-------------------------------------------------------------------------------------------------------------+
| Syslog | 1514/tcp | |
+-------------+------------+-------------------------------------------------------------------------------------------------------------+
| JSON | 5959/tcp | From python, recommended is the `LogStash Async <https://pypi.org/project/python-logstash-async/>`_ module. |
+-------------+------------+-------------------------------------------------------------------------------------------------------------+
| Beats | 5044/tcp | Use `FileBeat <https://www.elastic.co/beats/filebeat>`_ to watch logs locally, and forward them to ELK. |
| Beats | 5044/tcp | Use `FileBeat <https://www.elastic.co/beats/filebeat>`_ to watch logs locally, and forward them to Loki. |
+-------------+------------+-------------------------------------------------------------------------------------------------------------+
We recommend making sure the contents of your log lines are parsed correctly, especially if logs are routed to the *Syslog* input. These configurations are stored in ``docker-compose/elk/logstash/conf.d``. An example:
.. literalinclude:: ../../../docker-compose/elk/logstash/conf.d/22-parse-tango-rest.conf
We recommend making sure the contents of your log lines are parsed correctly, especially if logs are routed to the *Syslog* input. These configurations are stored in ``docker-compose/logstash/loki.conf``.
Log from Python
`````````````````
The ``common.lofar_logging`` module provides an easy way to log to the ELK stack from a Python Tango device.
The ``common.lofar_logging`` module provides an easy way to log to Loki through Logstash from a Python Tango device.
Log from Docker
`````````````````
......
......@@ -6,7 +6,7 @@
Welcome to LOFAR2.0 Station Control's documentation!
====================================================
LOFAR2.0 Station Control is a software stack aimed to monitor, control, and manage a LOFAR2.0 station. In order to do so, it whips up a series of Docker containers, and combines the power of `Tango Controls <https://www.tango-controls.org/>`_, `PyTango <https://pytango.readthedocs.io/en/stable/>`_, `Docker <https://www.docker.com/>`_, `Grafana <https://grafana.com/>`_, `ELK <https://www.elastic.co/what-is/elk-stack>`_, `Jupyter Notebook <https://jupyter.org/>`_, and many others to provide a rich and powerful experience in using the station.
LOFAR2.0 Station Control is a software stack aimed to monitor, control, and manage a LOFAR2.0 station. In order to do so, it whips up a series of Docker containers, and combines the power of `Tango Controls <https://www.tango-controls.org/>`_, `PyTango <https://pytango.readthedocs.io/en/stable/>`_, `Docker <https://www.docker.com/>`_, `Grafana <https://grafana.com/>`_, `Jupyter Notebook <https://jupyter.org/>`_, and many others to provide a rich and powerful experience in using the station.
Full monitoring and control access to the LOFAR2.0 station hardware is provided, by marshalling their rich `OPC-UA <https://opcfoundation.org/about/opc-technologies/opc-ua/>`_ interfaces. Higher-level logic makes it possible to easily configure and obtain the LOFAR station data products (beamlets, XSTs, SSTs, BSTs) from your local machine using Python, or through one of our provided web interfaces.
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment