コード例 #1
0
        public async Task <TResponse> Handle(TRequest request, CancellationToken cancellationToken, RequestHandlerDelegate <TResponse> next)
        {
            _timer.Start();

            var response = await next();

            _timer.Stop();

            var elapsedMilliseconds = _timer.ElapsedMilliseconds;

            if (elapsedMilliseconds > 500)
            {
                var nomRequete     = typeof(TRequest).Name;
                var idUtilisateur  = _utilisateurEnCoursService.IdUtilisateur ?? string.Empty;
                var nomUtilisateur = string.Empty;

                if (!string.IsNullOrEmpty(idUtilisateur))
                {
                    nomUtilisateur = await _identityService.RecupererNomUtilisateurAsync(idUtilisateur);
                }

                _logger.LogWarning($"Problème performance - Rêquète lente: {nomRequete} ({elapsedMilliseconds} milliseconds) {idUtilisateur} {nomUtilisateur} {request}");
            }

            return(response);
        }
コード例 #2
0
        public async Task Process(TRequest requete, CancellationToken cancellationToken)
        {
            var    nomRequete     = typeof(TRequest).Name;
            var    idUtilisateur  = _utilisateurEnCoursService.IdUtilisateur ?? string.Empty;
            string nomUtilisateur = string.Empty;

            if (!string.IsNullOrEmpty(idUtilisateur))
            {
                nomUtilisateur = await _identityService.RecupererNomUtilisateurAsync(idUtilisateur);
            }

            _logger.LogInformation($"Nouvelle Requête Http: {nomRequete} {idUtilisateur} {nomUtilisateur} {requete}");
        }