Skip to content
This repository was archived by the owner on Mar 13, 2025. It is now read-only.

Commit 2e485ac

Browse files
authored
Merge pull request #26 from afrisalyp/log
Add logs to debug duplicate issue.
2 parents fd718c2 + 30c2569 commit 2e485ac

File tree

3 files changed

+18
-5
lines changed

3 files changed

+18
-5
lines changed

services/IssueService.js

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -63,13 +63,19 @@ function parsePrizes(issue) {
6363
* @private
6464
*/
6565
async function ensureChallengeExists(event, issue, create = true) {
66+
logger.debug('Enter ensureChallengeExists to scan an issue record');
67+
logger.debug(`Enter ensureChallengeExists. Number: ${issue.number}`);
68+
logger.debug(`Enter ensureChallengeExists. provider: ${issue.provider}`);
69+
logger.debug(`Enter ensureChallengeExists. repositoryId: ${issue.repositoryId}`);
70+
6671
let dbIssue = await dbHelper.scanOne(models.Issue, {
6772
number: issue.number,
6873
provider: issue.provider,
6974
repositoryId: issue.repositoryId
7075
});
7176

7277
if (dbIssue && dbIssue.status === 'challenge_creation_pending') {
78+
logger.debug('dbIssue is PENDING');
7379
throw errors.internalDependencyError(`Challenge for the updated issue ${issue.number} is creating, rescheduling this event`);
7480
}
7581
if (dbIssue && dbIssue.status === 'challenge_creation_failed') {
@@ -83,12 +89,15 @@ async function ensureChallengeExists(event, issue, create = true) {
8389
}
8490

8591
if (!dbIssue && create) {
92+
logger.debug('dbIssue is NULL, process to create new record and challenge');
93+
8694
await handleIssueCreate(event, issue);
8795
dbIssue = await dbHelper.scanOne(models.Issue, {
8896
number: issue.number,
8997
provider: issue.provider,
9098
repositoryId: issue.repositoryId
9199
});
100+
logger.debug(`dbIssue is CREATED ${dbIssue ? 'Succesfully' : 'Failed'}`);
92101
}
93102
return dbIssue;
94103
}

utils/db-helper.js

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22
* Copyright (c) 2018 TopCoder, Inc. All rights reserved.
33
*/
44
'use strict';
5+
const logger = require('./logger');
56

67
/**
78
* This module contains the database helper methods.
@@ -52,11 +53,16 @@ async function scan(model, scanParams) {
5253
* @returns {Promise<void>}
5354
*/
5455
async function scanOne(model, scanParams) {
56+
logger.debug('Enter scanOne.');
57+
5558
return await new Promise((resolve, reject) => {
5659
model.scan(scanParams).exec((err, result) => {
5760
if (err) {
61+
logger.debug(`scanOne. Error. ${err}`);
5862
reject(err);
5963
}
64+
logger.debug(`scanOne. Result.`);
65+
logger.debug(result);
6066

6167
return resolve(result.count === 0 ? null : result[0]);
6268
});

utils/kafka.js

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ const logger = require('./logger');
2121

2222
class Kafka {
2323
constructor() {
24-
this.consumer = new kafka.GroupConsumer(config.KAFKA_OPTIONS);
24+
this.consumer = new kafka.SimpleConsumer(config.KAFKA_OPTIONS);
2525

2626
this.producer = new kafka.Producer(config.KAFKA_OPTIONS);
2727
this.producer.init().then(() => {
@@ -77,12 +77,10 @@ class Kafka {
7777
}
7878

7979
run() {
80-
this.consumer.init([{
81-
subscriptions: [config.TOPIC],
82-
handler: this.messageHandler
83-
}]).then(() => {
80+
this.consumer.init().then(() => {
8481
logger.info('kafka consumer is ready');
8582
healthcheck.init([this.check]);
83+
this.consumer.subscribe(config.TOPIC, {}, this.messageHandler);
8684
}).catch((err) => {
8785
logger.error(`kafka consumer is not connected. ${err.stack}`);
8886
});

0 commit comments

Comments
 (0)