mirror of
https://gitlab.com/Chill-Projet/chill-bundles.git
synced 2025-06-07 18:44:08 +00:00
add information about logging
This commit is contained in:
parent
20845bd737
commit
05a404d5b4
@ -21,6 +21,7 @@ As Chill rely on the `symfony <http://symfony.com>`_ framework, reading the fram
|
||||
Access control model <access_control_model.rst>
|
||||
Messages to users <messages-to-users.rst>
|
||||
Localisation <localisation.rst>
|
||||
Logging <logging.rst>
|
||||
Database migrations <migrations.rst>
|
||||
Searching <searching.rst>
|
||||
Timelines <timelines.rst>
|
||||
|
50
source/development/logging.rst
Normal file
50
source/development/logging.rst
Normal file
@ -0,0 +1,50 @@
|
||||
.. Copyright (C) 2016 Champs Libres Cooperative SCRLFS
|
||||
Permission is granted to copy, distribute and/or modify this document
|
||||
under the terms of the GNU Free Documentation License, Version 1.3
|
||||
or any later version published by the Free Software Foundation;
|
||||
with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts.
|
||||
A copy of the license is included in the section entitled "GNU
|
||||
Free Documentation License".
|
||||
|
||||
|
||||
Logging
|
||||
*******
|
||||
|
||||
.. seealso::
|
||||
|
||||
Symfony documentation: `How to user Monolog to write logs <http://symfony.com/doc/current/cookbook/logging/monolog.html>`_
|
||||
The symfony cookbook page about logging.
|
||||
|
||||
|
||||
A channel for custom logging has been created to store sensitive data.
|
||||
|
||||
The channel is named ``chill``.
|
||||
|
||||
The installer of chill should be aware that this channel may contains sensitive data and encrypted during backup.
|
||||
|
||||
Logging to channel `chill`
|
||||
============================
|
||||
|
||||
You should use the service named ``chill.main.logger``, as this :
|
||||
|
||||
.. code-block:: php
|
||||
|
||||
$logger = $this->get('chill.main.logger');
|
||||
|
||||
You should store data into context, not in the log himself, which should remains the same for the action.
|
||||
|
||||
Example of usage :
|
||||
|
||||
.. code-block:: php
|
||||
|
||||
$logger->info("An action has been performed about a person", array(
|
||||
'person_lastname' => $person->getLastName(),
|
||||
'person_firstname' => $person->getFirstName(),
|
||||
'person_id' => $person->getId(),
|
||||
'by_user' => $user->getUsername()
|
||||
));
|
||||
|
||||
For further processing, it is a good idea to separate all fields (like firstname, lastname, ...) into different context keys.
|
||||
|
||||
By convention, you should store the username of the user performing the action under the ``by_user`` key.
|
||||
|
@ -28,7 +28,7 @@ Usage in production
|
||||
.. toctree::
|
||||
:maxdepth: 2
|
||||
|
||||
How to install the software <installation.rst>
|
||||
Installation in production <install_production_webserver.rst>
|
||||
|
||||
Update Chill and maintenance
|
||||
==============================
|
||||
|
@ -14,4 +14,14 @@ Install production webserver
|
||||
.. todo::
|
||||
|
||||
the section "Install production webserver" must be written. Help appreciated :-)
|
||||
|
||||
|
||||
.. warning::
|
||||
|
||||
Some sensitive data (like the person data, ...) might be logged in a special channel, called ``chill``.
|
||||
|
||||
This channel will log events like items removed by a user, what where the details of this item, who removed it, ...
|
||||
|
||||
You should take care of encrypting or discarding those data if required.
|
||||
|
||||
For an how-to of how to encrypt those data, you may consult `the appropriate section of the symfony documentation <http://symfony.com/doc/current/cookbook/logging/monolog.html#handlers-and-channels-writing-logs-to-different-locations>`_
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user