abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 18:11 | IT novinky

    Dnes a zítra probíhá vývojářská konference Google I/O 2025. Sledovat lze na YouTube a na síti 𝕏 (#GoogleIO).

    Ladislav Hagara | Komentářů: 0
    dnes 15:22 | Komunita

    V Bostonu probíhá konference Red Hat Summit 2025. Vybrané přednášky lze sledovat na YouTube. Dění lze sledovat na síti 𝕏 (#RHSummit).

    Ladislav Hagara | Komentářů: 0
    dnes 15:00 | Nová verze

    Společnost Red Hat oficiálně oznámila vydání Red Hat Enterprise Linuxu 10. Vedle nových vlastností přináší také aktualizaci ovladačů a předběžné ukázky budoucích technologií. Podrobnosti v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    dnes 12:22 | Pozvánky

    Tuto sobotu 24. května se koná historicky první komunitní den projektu Home Assistant. Zváni jsou všichni příznivci, nadšenci a uživatelé tohoto projektu. Pro účast je potřebná registrace. Odkazy na akce v Praze a v Bratislavě.

    jose17 | Komentářů: 0
    dnes 04:44 | IT novinky

    Troy Hunt představil Have I Been Pwned 2.0, tj. nový vylepšený web služby, kde si uživatelé mohou zkontrolovat, zda se jejich hesla a osobní údaje neobjevili v únicích dat a případně se nechat na další úniky upozorňovat.

    Ladislav Hagara | Komentářů: 13
    včera 23:22 | Zajímavý software

    Microsoft představil open source textový editor Edit bežící v terminálu. Zdrojové kódy jsou k dispozici na GitHubu pod licencí MIT.

    Ladislav Hagara | Komentářů: 7
    včera 22:22 | Zajímavý software

    V Seattlu a také online probíhá konference Microsoft Build 2025. Microsoft představuje své novinky. Windows Subsystem for Linux je nově open source. Zdrojové kódy jsou k dispozici na GitHubu pod licencí MIT.

    Ladislav Hagara | Komentářů: 0
    včera 13:11 | Zajímavý článek

    Z příspěvku Turris Sentinel – co přinesl rok 2024 na blogu CZ.NIC: "Za poslední rok (únor 2024 – únor 2025) jsme zachytili 8,3 miliardy incidentů a to z 232 zemí a z jejich závislých území. Tyto útoky přišly od 6,2 milionu útočníků (respektive unikátních adres). SMTP minipot je stále nejlákavější pastí, zhruba 79 % útoků bylo směřováno na tento minipot, 16 % útoků směřovalo na minipot Telnet, 3 % útoků směřovaly na minipot HTTP a 2 % na minipot FTP. Dále jsme zaznamenali 3,2 milionu unikátních hesel a 318 tisíc unikátních loginů, které útočníci zkoušeli."

    Ladislav Hagara | Komentářů: 1
    včera 12:44 | Nová verze

    Byla vydána (Mastodon, 𝕏) nová verze 3.0.4 svobodné aplikace pro úpravu a vytváření rastrové grafiky GIMP (GNU Image Manipulation Program). Přehled novinek v oznámení o vydání a v souboru NEWS na GitLabu. Nový GIMP je již k dispozici také na Flathubu.

    Ladislav Hagara | Komentářů: 0
    včera 12:33 | Nová verze

    Byla vydána nová stabilní verze 7.4 webového prohlížeče Vivaldi (Wikipedie). Postavena je na Chromiu 136. Přehled novinek i s náhledy v příspěvku na blogu.

    Ladislav Hagara | Komentářů: 0
    Jaký je váš oblíbený skriptovací jazyk?
     (60%)
     (24%)
     (10%)
     (0%)
     (0%)
     (0%)
     (7%)
    Celkem 42 hlasů
     Komentářů: 4, poslední včera 22:41
    Rozcestník

    Dotaz: Monitoring procesu s dynamickým PID

    30.5.2022 18:36 Petr
    Monitoring procesu s dynamickým PID
    Přečteno: 398×
    Dobrý den.
    Potřeboval bych pomoct se zajištěním monitoringu procesu.
    V podstate volám ffmpeg s nějakými parametry. Po zavolání a spuštění procesu na pozadí potřebuju vědět, zda-li proces běží nebo neběží a pokud neběží, potřebuju aby se znovu spustil. Zatím nevím, kudy nejlépe do toho.

    Příklad
    ffmpeg -rtsp_transport tcp -i $RTSP_URL1 -c:v copy -c:a copy -f flv $DEST_URL1 > /var/log/ffmpeg/stream01.log 2>&1 < /dev/null &
    ffmpeg -rtsp_transport tcp -i $RTSP_URL2 -c:v copy -c:a copy -f flv $DEST_URL2 > /var/log/ffmpeg/stream02.log 2>&1 < /dev/null &
    
    Nějaký nápad ?
    Celé bych to následně rád svěřil systemd.

    Řešení dotazu:


    Odpovědi

    30.5.2022 18:45 X
    Rozbalit Rozbalit vše Re: Monitoring procesu s dynamickým PID
    Odpovedel jsi si sam. Napis si na to demona(unit) v systemd, ktery zajisti restart, logovani, status etc.
    1.6.2022 09:59 Petr
    Rozbalit Rozbalit vše Re: Monitoring procesu s dynamickým PID
    Asi by se hodil nějaký exampel...
    Mohu poprosit ?

    Neříkám "vymysli to za mě". Říkám example, odkaz, zdroj.
    Nikdy jsem to nedělal - hraju si.

    Děkuji.
    Max avatar 1.6.2022 10:15 Max | skóre: 72 | blog: Max_Devaine
    Rozbalit Rozbalit vše Re: Monitoring procesu s dynamickým PID
    Něco jako:
    nano /etc/systemd/system/ffmpeg.service
    
    [Unit]
    Description=FFmpeg service
    After=multi-user.target sound.target network-online.target
    
    [Service]
    Type=simple
    User=uzivatel
    Group=skupina
    WorkingDirectory=/home/user/
    ExecStart=/home/user/ffmpeg-script.sh
    Restart=always
    
    [Install]
    WantedBy=default.target
    
    
    systemctl daemon-reload
    systemctl enable ffmpeg
    systemctl start ffmpeg
    
    Nemám odzkoušeno, jen střílím.
    Zdar Max
    Měl jsem sen ... :(
    Ruža Becelin avatar 1.6.2022 11:05 Ruža Becelin | skóre: 40 | blog: RuzaBecelinBlog
    Rozbalit Rozbalit vše Re: Monitoring procesu s dynamickým PID
    Jeste tip:
    systemctl enable ffmpeg
    systemctl start ffmpeg
    
    lze nahradit
    systemctl enable ffmpeg --now
    1.6.2022 11:35 fe
    Rozbalit Rozbalit vše Re: Monitoring procesu s dynamickým PID
    Ta náhrada funguje jen v novějších distrech (novějších verzích systemd).
    Ruža Becelin avatar 1.6.2022 14:45 Ruža Becelin | skóre: 40 | blog: RuzaBecelinBlog
    Rozbalit Rozbalit vše Re: Monitoring procesu s dynamickým PID
    To jsou dneska vsechny podporovane, ne?
    1.6.2022 13:26 Petr
    Rozbalit Rozbalit vše Re: Monitoring procesu s dynamickým PID
    Děkuji za rady.
    Spíš tedy potřebuju řešit, jak ošetřit, že jeden ffmpeg běží a druhý že spadnul, což bych měl teda řešit na úrovni skriptu, který bude ten ffmpeg spouštět nebo na úrovni systemd ?

    Skript by zatím vypadal takto
    ffmpeg -rtsp_transport tcp -i $RTSP_URL1 -c:v copy -c:a copy -f flv $DEST_URL1 > /var/log/ffmpeg/stream01.log 2>&1 < /dev/null &
    ffmpeg -rtsp_transport tcp -i $RTSP_URL2 -c:v copy -c:a copy -f flv $DEST_URL2 > /var/log/ffmpeg/stream02.log 2>&1 < /dev/null &
    
    ..a je tedy potřeba ošetřit, že když spadne process ffmpegu pro kameru1, tak že se restartuje jen proces pro kameru1 a totéž úplně stejně pro kameru2 až kameruN. V žádném případě ale nesmí dojít ke spuštění procesu pro kameruX vícekrát, tedy duplicitně.

    Takže teď v tom mám ještě větší hokej.
    Nebo právě tohle bude hlídat systemd "samo" ?

    Děkuji.
    1.6.2022 13:51 X
    Rozbalit Rozbalit vše Re: Monitoring procesu s dynamickým PID
    Pro kazdou kameru si vytvor samostatny unit soubor cam1.service, cam2.service.. Asi by se dal ten ffmpeg poustet i primo:
    RunExec=/usr/bin/ffmpeg -rtsp_transport tcp -i $RTSP_URL1 -c:v copy -c:a copy -f flv $DEST_URL1
    
    to logovani a pousteni na pozadi:
     > /var/log/ffmpeg/stream01.log 2>&1 < /dev/null &
    muzes vynechat. Logovat za tebe bude systemd a na pozadi to pobezi automaticky:
    systemctl status cam1.service
    journalctl -u cam1.service
    
    1.6.2022 13:54 X
    Rozbalit Rozbalit vše Re: Monitoring procesu s dynamickým PID
    Ten restart uz tam mas od Maxe:
    Restart=always
    
    Nez se zacnes zase ptat tak se pred tim zkus podivat do manualu a na miliardu navodu na internetu ok?
    Jendа avatar 2.6.2022 17:13 Jendа | skóre: 78 | blog: Jenda | JO70FB
    Rozbalit Rozbalit vše Re: Monitoring procesu s dynamickým PID
    Může použít takové ty parametry unit, kdy se udělá jedna unita a pak se to spouští jako kamera@parametr.service.

    Logování do journalu mě zklamalo, je to 10x větší a šílené pomalé když to člověk listuje. Ale třeba se to dá poladit a takhle blbý je jenom default v Debianu. A pak se mi taky nepodařilo najít jak čistit logy pro různé unity s různým intervalem, třeba když se jedna zblázní a zaplní disk, nebo si naopak chci nějakou zachovat pro pozdější ladění. [1, 2]
    Max avatar 1.6.2022 13:56 Max | skóre: 72 | blog: Max_Devaine
    Rozbalit Rozbalit vše Re: Monitoring procesu s dynamickým PID
    Tak úplně nejjednodušší je mít dvě unity, pro každou kameru jednu.
    Pokud si tedy vezmeš ten příklad výše, tak se ta unita nemusí jmenovat ffmpeg.service, ale cam1.service, cam2.service atd. a v každé volat jiný skript / příkaz jen pro tu konkrétní kameru.
    O fous složitější na pochopení je mít unitu jednu a dávat jí parametry kamer.
    Zdar Max
    Měl jsem sen ... :(
    1.6.2022 16:06 Petr
    Rozbalit Rozbalit vše Re: Monitoring procesu s dynamickým PID
    Díky moc.
    Tohle je asi to, co by mě nejvíc zajímalo. Kamer bude víc, tak by se spíše hodila tato cesta...

    Petr

    Založit nové vláknoNahoru

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.