Skip to content

Commit c6f2b93

Browse files
improve logging and error handling
1 parent b1b945a commit c6f2b93

20 files changed

Lines changed: 67858 additions & 138 deletions

TransactionProcessing.SchedulerService/TransactionProcessing.SchedulerService.Jobs/Configuration/BaseConfiguration.cs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
using System;
2+
using Microsoft.Extensions.Logging;
23

34
namespace TransactionProcessing.SchedulerService.Jobs.Configuration;
45

TransactionProcessing.SchedulerService/TransactionProcessing.SchedulerService.Jobs/Configuration/FileUploadJobConfig.cs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
using System;
22
using System.Collections.Generic;
3+
using Microsoft.Extensions.Logging;
34

45
namespace TransactionProcessing.SchedulerService.Jobs.Configuration;
56

TransactionProcessing.SchedulerService/TransactionProcessing.SchedulerService.Jobs/Configuration/MakeFloatCreditsJobConfig.cs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
using System;
22
using System.Collections.Generic;
3+
using Microsoft.Extensions.Logging;
34

45
namespace TransactionProcessing.SchedulerService.Jobs.Configuration;
56

TransactionProcessing.SchedulerService/TransactionProcessing.SchedulerService.Jobs/Configuration/MerchantStatementJobConfig.cs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
using System;
2+
using Microsoft.Extensions.Logging;
23

34
namespace TransactionProcessing.SchedulerService.Jobs.Configuration;
45

TransactionProcessing.SchedulerService/TransactionProcessing.SchedulerService.Jobs/Configuration/ReplayParkedQueueJobConfig.cs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
using System;
2+
using Microsoft.Extensions.Logging;
23

34
namespace TransactionProcessing.SchedulerService.Jobs.Configuration;
45

TransactionProcessing.SchedulerService/TransactionProcessing.SchedulerService.Jobs/Configuration/SettlementJobConfig.cs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
using System;
2+
using Microsoft.Extensions.Logging;
23

34
namespace TransactionProcessing.SchedulerService.Jobs.Configuration;
45

TransactionProcessing.SchedulerService/TransactionProcessing.SchedulerService.Jobs/Configuration/TransactionJobConfig.cs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
using System;
22
using System.Collections.Generic;
3+
using Microsoft.Extensions.Logging;
34

45
namespace TransactionProcessing.SchedulerService.Jobs.Configuration;
56

TransactionProcessing.SchedulerService/TransactionProcessing.SchedulerService.Jobs/Jobs/BaseJob.cs

Lines changed: 15 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,17 @@
11
using System;
22
using System.Threading;
33
using System.Threading.Tasks;
4+
using NLog;
45
using Quartz;
56
using SecurityService.Client;
67
using SecurityService.DataTransferObjects.Responses;
7-
using Shared.Logger;
8+
using SimpleResults;
89
using TransactionProcessing.SchedulerService.DataGenerator;
910
using TransactionProcessing.SchedulerService.Jobs.Common;
1011
using TransactionProcessing.SchedulerService.Jobs.Configuration;
1112
using TransactionProcessor.Client;
13+
using Logger = Shared.Logger.Logger;
14+
using LogLevel = Microsoft.Extensions.Logging.LogLevel;
1215

1316
namespace TransactionProcessing.SchedulerService.Jobs.Jobs;
1417

@@ -34,19 +37,11 @@ protected ITransactionDataGeneratorService CreateTransactionDataGenerator(String
3437
runningMode);
3538
return g;
3639
}
37-
38-
//protected async Task<String> GetToken(String clientId, String clientSecret, CancellationToken cancellationToken)
39-
//{
40-
// ISecurityServiceClient securityServiceClient = Bootstrapper.GetService<ISecurityServiceClient>();
41-
// TokenResponse token = await securityServiceClient.GetToken(clientId, clientSecret, cancellationToken);
42-
43-
// return token.AccessToken;
44-
//}
45-
40+
4641
protected void TraceGenerated(TraceEventArgs traceArguments)
4742
{
4843
if (traceArguments.TraceLevel == TraceEventArgs.Level.Error){
49-
Logger.LogError(new Exception(traceArguments.Message));
44+
Logger.LogError(traceArguments.Message, null);
5045
}
5146
else if (traceArguments.TraceLevel == TraceEventArgs.Level.Warning){
5247
Logger.LogWarning(traceArguments.Message);
@@ -56,19 +51,21 @@ protected void TraceGenerated(TraceEventArgs traceArguments)
5651
}
5752
}
5853

59-
public abstract Task ExecuteJob(IJobExecutionContext context);
54+
public abstract Task<Result> ExecuteJob(IJobExecutionContext context);
6055

6156
public async Task Execute(IJobExecutionContext context){
6257

6358
this.CacheConfiguration(context);
64-
Logger.LogInformation($"Running Job Group: [{this.JobGroup}] Name: [{this.JobName}]");
65-
//this.LogConfiguration();
66-
59+
Logger.LogWarning($"Running Job Group: [{this.JobGroup}] Name: [{this.JobName}]");
60+
6761
Bootstrapper.ConfigureServices(context, this.BaseConfiguration);
62+
Result result = await this.ExecuteJob(context);
63+
if (result.IsFailed){
64+
Logger.LogWarning($"Job Group: [{this.JobGroup}] Name: [{this.JobName}] failed. Exception {result.Message}");
65+
throw new JobExecutionException(result.Message);
66+
}
6867

69-
await this.ExecuteJob(context);
70-
71-
Logger.LogInformation($"Job Group: [{this.JobGroup}] Name: [{this.JobName}] completed");
68+
Logger.LogWarning($"Job Group: [{this.JobGroup}] Name: [{this.JobName}] completed");
7269
}
7370

7471
private void CacheConfiguration(IJobExecutionContext context){

TransactionProcessing.SchedulerService/TransactionProcessing.SchedulerService.Jobs/Jobs/GenerateFileUploadsJob.cs

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -5,25 +5,24 @@
55

66
namespace TransactionProcessing.SchedulerService.Jobs.Jobs
77
{
8-
using System;
9-
using System.Threading.Tasks;
108
using Quartz;
119
using Shared.Logger;
10+
using SimpleResults;
11+
using System;
12+
using System.Threading.Tasks;
1213
using TransactionProcessing.SchedulerService.Jobs.Jobs;
1314

1415
[DisallowConcurrentExecution]
1516
public class GenerateFileUploadsJob : BaseJob
1617
{
1718
#region Methods
18-
public override async Task ExecuteJob(IJobExecutionContext context)
19+
public override async Task<Result> ExecuteJob(IJobExecutionContext context)
1920
{
2021
FileUploadJobConfig configuration = Helpers.LoadJobConfig<FileUploadJobConfig>(context.MergedJobDataMap);
2122

2223
ITransactionDataGeneratorService t = CreateTransactionDataGenerator(configuration.ClientId, configuration.ClientSecret, RunningMode.Live);
2324
t.TraceGenerated += TraceGenerated;
24-
var result = await Jobs.GenerateFileUploads(t, configuration, context.CancellationToken);
25-
if (result.IsFailed)
26-
throw new JobExecutionException(result.Message);
25+
return await Jobs.GenerateFileUploads(t, configuration, context.CancellationToken);
2726
}
2827
#endregion
2928
}

TransactionProcessing.SchedulerService/TransactionProcessing.SchedulerService.Jobs/Jobs/GenerateMerchantStatementJob.cs

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -4,22 +4,21 @@
44

55
namespace TransactionProcessing.SchedulerService.Jobs.Jobs;
66

7-
using System;
8-
using System.Threading.Tasks;
97
using Quartz;
108
using Shared.Logger;
9+
using SimpleResults;
10+
using System;
11+
using System.Threading.Tasks;
1112
using TransactionProcessing.SchedulerService.Jobs.Jobs;
1213

1314
public class GenerateMerchantStatementJob : BaseJob
1415
{
15-
public override async Task ExecuteJob(IJobExecutionContext context)
16+
public override async Task<Result> ExecuteJob(IJobExecutionContext context)
1617
{
1718
MerchantStatementJobConfig configuration = Helpers.LoadJobConfig<MerchantStatementJobConfig>(context.MergedJobDataMap);
1819

1920
ITransactionDataGeneratorService t = CreateTransactionDataGenerator(configuration.ClientId, configuration.ClientSecret, RunningMode.Live);
2021
t.TraceGenerated += TraceGenerated;
21-
var result = await Jobs.GenerateMerchantStatements(t, configuration, context.CancellationToken);
22-
if (result.IsFailed)
23-
throw new JobExecutionException(result.Message);
22+
return await Jobs.GenerateMerchantStatements(t, configuration, context.CancellationToken);
2423
}
2524
}

0 commit comments

Comments
 (0)