Jeg vil kjøre en liten overvåkingsfil hver 2. time i min ubuntu-maskin.

java -jar mymonitoringtool.jar 

Jeg vet ikke hvordan jeg skal sette den opp.

Kommentarer

  • cron er din venn for dette.
  • Hva må skje rundt å bytte til / fra sommertid? Er det veldig viktig at jobben kjøres annenhver time og ikke har lov til å hoppe over eller legge til en time rundt da?
  • ja, den skal kjøre annenhver time. Ingen overspring antar jeg, da den ikke ville være effektiv, representerer 2 timer overvåking i stedet for mindre enn to timer. Vi planlegger å kjøre litt statistikk om den. Så varigheten er viktig.

Svar

Du kan sette opp en crontab med følgende uttrykk for dine behov.

0 */2 * * * path/to/java -jar path/to/mymonitoringtool.jar &> path/to/monitor-$(date "+%Y%b%d-%H%M%S").log 

Du bør først se etter eksisterende cron-jobber ved å kjøre crontab -l.

Hvis du ikke gjør det har noen cron jobber ennå, kan du sette a bove line i en tekstfil (si my-cron-job.txt) og kjør crontab my-cron-job.txt for å aktivere den. Du kan deretter bekrefte at jobben er lagt til ved å kjøre crontab -l en gang til.

Hvis du har eksisterende cron-jobber, må du kjøre crontab -e og rediger crontab-filen. Dette krever at du jobber med en kommandolinjeditor (vi, som standard).

Cron-demon stiller bare et begrenset antall av miljøvariabler, så det er å foretrekke å spesifisere hele banen til Java-kjørbar. Du må også spesifisere hele banen til den kjørbare JAR-filen.

Jeg antar at du vil samle utdata fra java -jar -kommandoen, så Jeg har lagt til en loggfil i kommandoen. Utdata- og feilstrømmene fra kommandoen vil bli omdirigert til denne loggfilen, som vil bli navngitt med en tidsstempel (monitor-2018Nov03-200000.log, for eksempel).

Når alt er satt, bør du overvåke cron-jobben for den første eller to henrettelsene. Hvis alt fungerer som du trenger, kan du la den gå.


Som en ekstern referanse , her er en introduksjon om cron-jobber. Dette skal hjelpe deg med å forstå hvordan planleggingen faktisk fungerer.

https://www.howtoforge.com/a-short-introduction-to-cron-jobs

Svar

cron er Linuxs interne jobbplanlegger. Det hjelper med å planlegge kommandoen din for å kjøre med et bestemt intervall eller dato_tid.

type crontab -e på terminalen

legg til denne linjen 0 */2 * * * path/to/java -jar path/to/mymonitoringtool.jar

lagre og gå ut

Crontab Syntax som følger

00 */2 * * * path/to/java -jar path/to/mymonitoringtool.jar 

0. minutt hver 2. time hver dag hver måned hver ukedag kjør denne kommandoen

For flere alternativer og informasjon: https://help.ubuntu.com/community/CronHowto

Kommentarer

  • Er sti / til / java nødvendig hvis jeg har konfigurert JAVA_HOME? Jeg kan se java -versjon fungerer på maskinen min.
  • ikke nødvendig legg til sti hvis miljøvariabel (JAVA_HOME) er satt. Men på en eller annen måte hvis miljøvariabelen ødela, la Java-banen i cronjob til ' t brems

Legg igjen en kommentar

Din e-postadresse vil ikke bli publisert. Obligatoriske felt er merket med *