Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

497
Views
NestJs Using Environment Configuration on @Cron decorator

I am building a nestJs application, with scheduling and configuration. I want to be able to configure my Cron with my environment variable but it does not seems to work.

app.module.ts :

@Module({
  imports: [
    ConfigModule.forRoot(),
    ScheduleModule.forRoot(),
    SchedulingModule,
    ...
  ],
})
export class AppModule {}

scheduling.service.ts (from my SchedulingModule) :

@Cron(process.env.CRON_VALUE)
scheduledJob() {
  this.logger.log('Scheduled : Job');
  ...
}

.env :

...
CRON_VALUE=0 4 * * *
...

Apparently at the moment the value is checked it's empty. I got the following error :

(node:55016) UnhandledPromiseRejectionWarning: TypeError: Cannot read property '_isAMomentObject' of undefined
    at new CronTime (/Users/antoinegrenard/Documents/Projet/b4finance/service-scheduling/node_modules/cron/lib/cron.js:42:50)
    at new CronJob (/Users/antoinegrenard/Documents/Projet/b4finance/service-scheduling/node_modules/cron/lib/cron.js:527:19)
    at /Users/antoinegrenard/Documents/Projet/b4finance/service-scheduling/node_modules/@nestjs/schedule/dist/scheduler.orchestrator.js:56:29 
    ...
about 4 years ago · Juan Pablo Isaza
2 answers
Answer question

0

To fix this problem you should load the config on your service again:

require('dotenv').config();
about 4 years ago · Juan Pablo Isaza Report

0

Apparently it is not possible to get env values in decorators.

I had to do it this way :

constructor(private schedulerRegistry: SchedulerRegistry) {}

onModuleInit() {
  const job = new CronJob(process.env. CRON_VALUE, () => {
    // What you want to do here
  });

  this.schedulerRegistry.addCronJob(name, job);
  job.start();
}
about 4 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!