- RAM suvartojimo sekimas „Ubuntu“ kompiuteryje
- Procesoriaus naudojimas
- Disko vietos suvartojimas
- Proceso gyvavimo ciklas
Nors jie gali skambėti kaip nedideli klausimai, tačiau serveriams, turintiems gamybines programas, jie tikrai gali sukelti didelę netvarką. Šiame įraše sukursime perspėjimus, kad bet kuriuo iš aukščiau išvardytų atvejų suinteresuotieji asmenys būtų įspėti.
Pradžia
Dabar viskas prasideda nuo sąskaitos sudarymo. Apsilankykite „DataDog“ ir prisiregistruokite gauti paskyrą, jei to dar nepadarėte.
„DataDog“ siūlo daugybę paslaugų, tokių kaip:
- Monitoriai yra įrankiai, padedantys mums stebėti įvykį, kuris gali būti bet koks, pavyzdžiui, kiek RAM laisvos šiuo metu mašinoje arba kiek laisvos vietos diske.
- Pėdsakas gali būti naudojamas norint stebėti, kiek užtruko tam tikros žiniatinklio užklausos apdorojimas
- Paskelbti įspėjimus į integruotą įrankį, pvz., „Slack“, arba tiesiog paskelbkite pranešimą AMQP eilėje, kad galėtumėte jį visur stebėti
Galima padaryti daug daugiau, tačiau turėsime apsiriboti ir pradėti teikti praktinius pavyzdžius.
Įėję į „DataDog“, pagrindinį puslapį galime pamatyti kaip:
„DataDog“ diegimas „Ubuntu“
Diegti „DataDog“ „Ubuntu“ yra labai lengva ir iš tikrųjų naudojama tik viena komanda, kuri yra:
DD_API_KEY = bash -c "$ (garbanos -Lhttps: // neapdorotas.githubusercontent.com / DataDog / dd-agent / master / packaging / datadog-
agentas / šaltinis / diegimo_agentas.sh) "
Galite gauti savo API raktą, kai užsiregistruosite naujai paskyrai.
Atlikus šią komandą, „DataDog Agent“ veikia ir veikia tinkamai. Jis ir toliau veiks fone ir pateiks metriką „Datadog“.
Jei kada norite sustabdyti agentą, paleiskite:
sudo / etc / init.d / datadog-agent stopIr vėl paleisti:
sudo / etc / init.d / datadog-agent startPridedamas naujas monitorius
Norėdami pridėti naują monitorių, naudokime mums pateiktą prietaisų skydelio sąrašą:
Pagrindinio kompiuterio monitoriaus kūrimas
Norėdami pradėti, mes sukuriame patį pagrindinį monitorių - pagrindinį kompiuterį. Šis monitorius patikrins, ar atstovaujamasis kompiuteris veikia.
Eikite į „Kurti monitorių“ ir pažymėkite „Host“:
Kai tai padarysite, jūsų bus paprašyta pasirinkti pagrindinį kompiuterį iš sąrašo:
Galiausiai nustatykite įspėjimą ir praneškite komandai:
Aukščiau pateiktuose nustatymuose jis klausia, kiek sekundžių laukti, kol bus sugeneruotas įspėjimas. Taip lengva sukurti prieglobos įspėjimą!
RAM naudojimo monitorius
„DataDog“ beveik realiuoju laiku gali stebėti, kiek RAM naudojama jūsų sistemoje ir kiek laisvos. Jei jis peržengia ribą, jis gali sukurti įspėjimą.
Tęskite ir sukurkite „Metrikos“ įspėjimą šį kartą:
Dabar turime nuspręsti, kokį įspėjimą generuoti, mūsų atveju, kuris bus Įspėjimas apie slenkstį.
Apibrėžkite metriką kaip sistema.mem.pct_usable kuri stebi iki šiol naudojamos RAM procentinę dalį:
Pridėkite pagrindinį kompiuterį ir apibūdinkite monitorių.
Aukščiau pateiktuose nustatymuose apibūdiname, kad įspėjimas turėtų būti sugeneruotas, kai laisvos RAM yra mažiau nei 5% (0.05).
Vėlgi, įspėjimas bus sugeneruotas, kai laisva RAM bus mažesnė nei 10% (0.1).
Pranešimo kondicionavimas
Pranešimą, kuris siunčiamas kaip perspėjimas, galime modifikuoti atsižvelgdami į tai, ar perspėjimas buvo tikrasis įspėjimas, ar įspėjimas, ar kai perspėjimas buvo atkurtas. Parodykime tai čia:
#is_alert Nemokama RAM yra mažiau nei 5% ! / is_alert#is_warning Nemokama RAM yra įspėjamojo lygio ! / is_warning
#is_recovery Nemokama RAM dabar atrodo gerai ! / is_recovery
Žiūrėkite, tinkami pranešimai bus paskelbti tinkamomis sąlygomis.
Procesoriaus naudojimo monitorius
„DataDog“ beveik realiuoju laiku taip pat gali stebėti, kiek procesoriaus naudojama jūsų sistemoje ir kiek nemokama. Jei jis peržengia ribą, jis gali sukurti įspėjimą.
Tęskite ir vėl sukurkite „Metrikos“ įspėjimą.
Atkreipkite dėmesį, kad šiuo atveju mes naudojome sistema.procesorius.Vartotojas vėliava.
Aukščiau pateiktuose nustatymuose aprašome, kad įspėjimas turėtų būti sugeneruotas, kai naudojamas procesorius viršija 90% (0.05).
Vėlgi, įspėjimas bus sugeneruotas, kai naudojamas procesorius viršys 80% (0.1).
Proceso monitorius
Galiausiai sukursime proceso stebėtoją, kuris stebi, ar tam tikras procesas mašinoje vyksta, ar ne. Šis procesas gali būti visiškai naudingas, pavyzdžiui:
- Jei „Nginx“ veikia ir norite žinoti, kad jis veikia
- Paleidžiate savo žiniatinklio programą ir jos procesas nėra užmuštas dėl kitų kliūčių
Taip pat yra keletas šio monitoriaus trūkumų. Daug kartų procesas viduje neveikia dėl savo išimčių, tačiau sistema jo neužmuša. Tokiu atveju, „DataDog“ nepraneš apie tai kaip perspėjimą.
Pradėkime kurti proceso monitorių.
SSH į „Ubuntu“ kompiuterį ir pakeiskite kelią, kuriame „DataDog“ saugo konfigūracijos failus. Pagal numatytuosius nustatymus tai yra:
cd / etc / dd-agent / conf.dŠiame kataloge bus daug konfigūrinių failų pavyzdžių. Mes naudosimės procesą.yaml.pavyzdys, nukopijuokite jį ir tiesiog pervardykite failo kopiją į procesą.yaml kurį galime modifikuoti.
Į failą įveskite šį turinį:
init_config:atvejų:
- vardas: mano procesas
Paieškos eilutė: ['my-process-string']
tikslus_sutapimas: klaidingas
žymos:
- env: dev
Pažiūrėkime, kas dedama į šį failą:
- Mes suteikiame savo procesui pavadinimą, kuris bus rodomas „DataDog“ informacijos suvestinėje
- Paieškos eilutė yra eilutė, kuri pasirodo, kai ieškote proceso savo kompiuteryje. Atminkite, kad turite pasirinkti gražią eilutę, unikalią jūsų procesui
- Nustatyti tikslią atitiktį į Netikras yra svarbu, kad ši eilutė būtų ieškoma tik ir nebūtų pritaikyta tiksliai atitikti rastą procesą
- Žyma yra tik keletas metaduomenų, per kuriuos mes galime ieškoti procesų savo informacijos suvestinėje
Kai baigsite kurti šį failą, eikite ir iš naujo paleiskite DD agentą naudodami anksčiau pateiktą komandą.
Informacijos suvestinėje sukurkite naują „Process“ monitorių:
Čia bus rodomas proceso pavadinimas, kurį parašėme faile.
Dabar galime nuspręsti dar keletą nustatymų:
Galiausiai paspauskite „Išsaugoti“ ir viskas.
Tai galite pamatyti, kaip mes naudojame „DataDog“ pagrindiniam stebėjimui. Jei turite klausimų ar komentarų, bendraukite su mumis „Twitter“ adresu @linuxhint.