コード例 #1
0
        public async Task Execute(IJobExecutionContext context)
        {
            var correlationId = _correlationIdGenerator.Generate();

            try
            {
                JobNameGuard();

                _appLogger.Info($"{JobName} Job with correlationId {correlationId} is starting.");

                await ExecuteJob(context);

                _appLogger.Info($"{JobName} Job with correlationId {correlationId} is finished.");
            }
            catch (Exception exception)
            {
                var stringBuilder = new StringBuilder();
                stringBuilder.Append($"{JobName} with correlationId {correlationId} is failed.");
                stringBuilder.AppendLine();
                stringBuilder.Append($"Message:{exception.Message}");
                stringBuilder.AppendLine();
                stringBuilder.Append($"StackTrace:{exception.StackTrace}");
                stringBuilder.AppendLine();

                _appLogger.Error(stringBuilder.ToString());
            }
        }