work on refactoring operation tracker
This commit is contained in:
parent
cbf002a31a
commit
c24e551734
11 changed files with 121 additions and 145 deletions
|
|
@ -395,30 +395,23 @@ export async function scheduleSymbolNewsUpdates(
|
|||
};
|
||||
}
|
||||
|
||||
// Get full symbol data
|
||||
const symbolsToProcess = await this.mongodb.find('qmSymbols', {
|
||||
qmSearchCode: { $in: staleSymbols }
|
||||
}, {
|
||||
projection: { symbol: 1, symbolId: 1, qmSearchCode: 1 }
|
||||
});
|
||||
|
||||
this.logger.info(`Found ${symbolsToProcess.length} symbols for news updates`);
|
||||
this.logger.info(`Found ${staleSymbols.length} symbols for news updates`);
|
||||
|
||||
let symbolsQueued = 0;
|
||||
let errors = 0;
|
||||
|
||||
// Schedule update jobs
|
||||
for (const doc of symbolsToProcess) {
|
||||
for (const item of staleSymbols) {
|
||||
try {
|
||||
if (!doc.symbolId) {
|
||||
this.logger.warn(`Symbol ${doc.symbol} missing symbolId, skipping`);
|
||||
if (!item.symbol.symbolId) {
|
||||
this.logger.warn(`Symbol ${item.symbol.symbol} missing symbolId, skipping`);
|
||||
continue;
|
||||
}
|
||||
|
||||
await this.scheduleOperation('update-symbol-news', {
|
||||
symbol: doc.symbol,
|
||||
symbolId: doc.symbolId,
|
||||
qmSearchCode: doc.qmSearchCode
|
||||
symbol: item.symbol.symbol,
|
||||
symbolId: item.symbol.symbolId,
|
||||
qmSearchCode: item.symbol.qmSearchCode
|
||||
}, {
|
||||
priority: 4, // Lower priority than price data
|
||||
delay: symbolsQueued * 500 // 0.5 seconds between jobs
|
||||
|
|
@ -426,7 +419,7 @@ export async function scheduleSymbolNewsUpdates(
|
|||
|
||||
symbolsQueued++;
|
||||
} catch (error) {
|
||||
this.logger.error(`Failed to schedule news update for ${doc.symbol}`, { error });
|
||||
this.logger.error(`Failed to schedule news update for ${item.symbol.symbol}`, { error });
|
||||
errors++;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue