Skip to content
Snippets Groups Projects
Commit 98c4376c authored by Pierre Fleutot's avatar Pierre Fleutot
Browse files

Ajout envoi de mail lors des logs d'erreurs. Ajout adresses d'envoi de tous...

Ajout envoi de mail lors des logs d'erreurs. Ajout adresses d'envoi de tous les emails pour env = preprod. Rajout validation email user vérifié
parent 6846697a
No related branches found
No related tags found
No related merge requests found
framework:
mailer:
dsn: '%env(MAILER_DSN)%'
when@preprod:
framework:
mailer:
dsn: '%env(MAILER_DSN)%'
envelope:
recipients: ['fleutotp@gmail.com', 'enzo.simonnet@liris.cnrs.fr', 'mathieu.loiseau@liris.cnrs.fr']
when@dev:
framework:
mailer:
dsn: '%env(MAILER_DSN)%'
when@prod:
framework:
mailer:
dsn: '%env(MAILER_DSN)%'
\ No newline at end of file
......@@ -43,19 +43,54 @@ when@prod:
main:
type: fingers_crossed
action_level: error
handler: nested
handler: grouped
excluded_http_codes: [404, 405]
buffer_size: 50 # How many messages should be saved? Prevent memory leaks
nested:
type: stream
path: php://stderr
grouped:
type: group
members: [streamed, symfony_mailer]
streamed:
type: stream
path: '%kernel.logs_dir%/%kernel.environment%.log'
level: debug
formatter: monolog.formatter.json
console:
type: console
process_psr_3_messages: false
channels: ["!event", "!doctrine"]
deprecation:
type: stream
channels: [deprecation]
path: php://stderr
deduplicated:
type: deduplication
time: 10 # the time in seconds during which duplicate entries are discarded (default: 60)
handler: symfony_mailer
symfony_mailer:
type: symfony_mailer
from_email: '%env(MONOLOG_ERROR_MAIL_FROM)%'
to_email: '%env(MONOLOG_ERROR_MAIL_TO)%'
subject: 'Bug Balex %kernel.environment% : %%message%%'
level: critical
formatter: monolog.formatter.extra_data
content_type: text/html
when@preprod:
monolog:
handlers:
main:
type: fingers_crossed
action_level: error
handler: grouped
excluded_http_codes: [404, 405]
buffer_size: 50 # How many messages should be saved? Prevent memory leaks
grouped:
type: group
members: [streamed, symfony_mailer]
streamed:
type: stream
path: '%kernel.logs_dir%/%kernel.environment%.log'
level: debug
deduplicated:
type: deduplication
time: 10 # the time in seconds during which duplicate entries are discarded (default: 60)
handler: symfony_mailer
symfony_mailer:
type: symfony_mailer
from_email: '%env(MONOLOG_ERROR_MAIL_FROM)%'
to_email: '%env(MONOLOG_ERROR_MAIL_TO)%'
subject: 'Bug Balex %kernel.environment% : %%message%%'
level: critical
formatter: monolog.formatter.extra_data
content_type: text/html
......@@ -37,6 +37,15 @@ services:
tags: [serializer.normalizer]
monolog.formatter.extra_data:
class: Monolog\Formatter\HtmlFormatter
arguments:
- "[%%datetime%%] [%%extra.token%%] %%channel%%.%%level_name%%: %%message%% %%context%% %%extra%%\n"
App\Logger\ExtraDataProcessor:
tags:
- { name: monolog.processor }
# app.listener.api_exception:
# class: AppBundle\EventListener\ApiExceptionSubscriber
# tags:
......
......@@ -20,11 +20,11 @@ class CheckVerifiedUserSubscriber implements EventSubscriberInterface
if (!$user instanceof User) {
throw new \Exception('Unexpected user type');
}
// if (!$user->getIsVerified()) {
// throw new CustomUserMessageAuthenticationException(
// "Veuillez confirmer la création de votre compte depuis l'email reçu."
// );
// }
if (!$user->getIsVerified()) {
throw new CustomUserMessageAuthenticationException(
"Veuillez confirmer la création de votre compte depuis l'email reçu."
);
}
}
public static function getSubscribedEvents()
{
......
<?php
namespace App\Logger;
use App\Entity\User;
use Symfony\Component\HttpFoundation\RequestStack;
use Symfony\Component\Security\Core\Authentication\Token\Storage\TokenStorage;
use Symfony\Component\Security\Core\Security;
class ExtraDataProcessor
{
private $tokenStorage;
private $requestStack;
public function __construct(Security $security, RequestStack $requestStack)
{
$this->security = $security;
$this->requestStack = $requestStack;
}
public function __invoke(array $record)
{
if ($this->security->getUser() != null) {
$user = $this->security->getUser();
if ($user instanceOf User) {
$record['extra']['utilisateur']['nom'] = $user->getPseudo();
$record['extra']['utilisateur']['email'] = $user->getEmail();
} else {
$record['extra']['utilisateur'] = "Not logged in.";
}
} else {
$record['extra']['utilisateur'] = "Not logged in.";
}
$request = $this->requestStack->getCurrentRequest();
if ($request){
$record['extra']['url'] = $request->getUri();
}
return $record;
}
}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment