All Products
Search
Document Center

SchedulerX:Parameter JobContext

Last Updated:Aug 08, 2026

Objek JobContext menyediakan informasi waktu proses mengenai eksekusi pekerjaan saat ini, termasuk pengidentifikasi, waktu penjadwalan, status retry, detail sharding, dan data alur kerja hulu.

Penggunaan dasar

Akses parameter JobContext melalui metode getter dalam penanganan pekerjaan Anda:

public class SampleJobProcessor extends JavaProcessor {
    @Override
    public ProcessResult process(JobContext context) throws Exception {
        // Pengidentifikasi pekerjaan dan instans
        long jobId = context.getJobId();
        long instanceId = context.getJobInstanceId();

        // Metadata penjadwalan
        DateTime scheduledTime = context.getScheduleTime();
        DateTime dataTime = context.getDataTime();

        // Parameter statis yang dikonfigurasi di Konsol SchedulerX
        String params = context.getJobParameters();

        // Parameter dinamis yang diteruskan melalui panggilan API
        String dynamicParams = context.getInstanceParameters();

        // Status retry
        int currentAttempt = context.getAttempt();
        int maxRetries = context.getMaxAttempt();

        System.out.println("Job " + jobId + ", instance " + instanceId
            + ", attempt " + currentAttempt + "/" + maxRetries);

        return new ProcessResult(true);
    }
}

Pengidentifikasi pekerjaan dan instans

ParameterTipeDeskripsi
jobIdlongID Pekerjaan.
jobInstanceIdlongID instans pekerjaan.
jobTypeStringTipe pekerjaan.
taskIdlongID tugas dalam pekerjaan terdistribusi. ID tugas akar adalah 0.
taskNameStringNama tugas.
taskObjectIsi tugas.

Waktu penjadwalan

ParameterTipeDeskripsi
scheduleTimeDateTimeWaktu terjadwal instans.
dataTimeDateTimeWaktu saat pekerjaan dijalankan pada instans tersebut.

Parameter pekerjaan

ParameterTipeDeskripsi
jobParametersStringParameter statis yang dikonfigurasi di Konsol SchedulerX. Ukuran maksimum: 10.000 byte.
instanceParametersStringParameter dinamis yang diteruskan saat instans dipicu melalui panggilan API.

Parameter retry

ParameterTipeDeskripsi
maxAttemptintJumlah maksimum retry untuk instans pekerjaan.
attemptintJumlah retry saat ini untuk instans pekerjaan.
taskMaxAttemptintJumlah maksimum retry untuk tugas.
taskAttemptintJumlah retry saat ini untuk tugas.

Parameter sharding

Hanya tersedia ketika Execution mode diatur ke Broadcast run atau Shard run.

ParameterTipeDeskripsi
shardingIdLongID shard. Tersedia dalam mode Broadcast run dan Shard run.
shardingParameterStringParameter sharding. Hanya tersedia dalam mode Shard run.
shardingNumintJumlah total shard. Tersedia dalam mode Broadcast run dan Shard run.

Contoh:

public class ShardJobProcessor extends JavaProcessor {
    @Override
    public ProcessResult process(JobContext context) throws Exception {
        Long shardId = context.getShardingId();
        int totalShards = context.getShardingNum();
        String shardParam = context.getShardingParameter();

        System.out.println("Processing shard " + shardId + " of " + totalShards);

        return new ProcessResult(true);
    }
}

Parameter alur kerja

Tersedia ketika pekerjaan dijalankan sebagai bagian dari alur kerja.

ParameterTipeDeskripsi
workflowIdLongID Alur kerja.
wfInstanceIdlongID instans alur kerja.
upstreamDataList<JobInstanceData>Data dari instans pekerjaan hulu dalam alur kerja. Sebuah alur kerja dapat memiliki beberapa instans hulu, sehingga parameter ini mengembalikan daftar.
workflowParametersStringParameter alur kerja. Memerlukan versi client 1.14.2 atau lebih baru.