Mitsitsy ny fotoana, ny nerveuse ary ny ora maha-olona izahay

Ny tetikasanay matetika dia isam-paritra, ary ny mpanjifa dia matetika ministera. Saingy, ankoatry ny sehatry ny fanjakana dia mampiasa ny rafitra misy antsika koa ny fikambanana tsy miankina. Saika tsy misy olana amin'izy ireo.

Noho izany, ny tetikasa lehibe dia isam-paritra, ary indraindray misy olana amin'izy ireo. Ohatra, miaraka amin'ny fampisehoana, rehefa any amin'ny faritra dia misy mihoatra ny 20k amin'ireo mpampiasa sarobidy anay mandritra ny vanim-potoanan'ny famoahana fampiasa vaovao amin'ny mpizara vokatra. Fanaintainana izany…

Ruslan no anarako ary manohana ny rafitra fampahalalana an'ny Bars Group sy mamolavola bot mpamono ho an'ny DBA mahery setra. Ity lahatsoratra ity dia tsy natao ho an'ny reraka - be dia be ny litera sy sary.

Mitsitsy ny fotoana, ny nerveuse ary ny ora maha-olona izahay

/awr

Ny sasany amin'ireo fampiharanay dia mandeha amin'ny Oracle DBMS. Misy ihany koa ny tetikasa ao amin'ny PostgreSQL DBMS. Manana zavatra mahafinaritra ny Oracle - fanangonana antontan'isa momba ny enta-mavesatra ao amin'ny DBMS, izay manasongadina ny olana misy ary manao tolo-kevitra amin'ny fanafoanana mihitsy aza - Automatic Workload Repository (AWR). Amin'ny fotoana iray (izany hoe amin'ny fotoanan'ny fanaintainana), ny mpamorona dia nangataka ny hanangona AWR tatitra momba ny famakafakana zava-bita. Nandeha tamim-pahatsorana tany amin'ny mpizara DBMS izahay, nanangona tatitra, nitondra azy ireo tany aminay ary nalefa tany amin'ny famokarana hanaovana fanadihadiana. Taorian'ny faha-5 dia nanjary nahasosotra ... taorian'ny faha-10 dia nanjary nahasosotra ...

Ny iray tamin'ireo mpiara-miasa tamiko indray mandeha dia naneho ny hevitra fa ny zavatra rehetra atao mihoatra ny indray mandeha dia tokony ho mandeha ho azy. Mandra-pahatongan'ny fotoana mahasosotra, raha ny marina, tsy nieritreritra an'izany aho ary nanandrana nanao automatique izay rehetra azo automatique, saingy matetika dia tsy notakiana izany ary fikarohana bebe kokoa fa tsy toetra nampiharina.

Ary avy eo nieritreritra aho hoe: "Tsy ilaina ny mpitantana mba hamoronana tatitra...". Rehefa dinihina tokoa, ny fanangonana tatitra dia midika fa manatanteraka ny script sql @$ORACLE_HOME/rdbms/admin/awrrpt.sql ary mitondra ny tatitra avy amin'ny mpizara ho any amin'ny toeranao... Oh eny, tsy avelanay ny fampandrosoana ho an'ny famokarana.

Avy eo aho Googled ny vaovao ilaina, namorona ny asa avy amin'ny lahatsoratra momba ny fitsapana fototra, nihazakazaka ny script sy ny fahagagana - ny tatitra dia natambatra ary azo tehirizina eo an-toerana. Namorona fiasa izay nilaina matetika ny tatitra AWR ary nilaza tamin'ny mpamorona ny fomba fampiasana azy ireo.

Manodidina io fotoana io, tamin'ny fotoam-pialan-tsasatra, rehefa avy niresaka tamin'i @BotFather, dia namorona bot Telegram ho an'ny tenako aho, mba fialamboly fotsiny. Nivadika aho tamin'ny fiasa tsotra tao - asehoy ny fotoana ankehitriny, ny tahan'ny fifanakalozana, ny toetrandro, nampianatra azy handefa fiderana ho an'ny vadiko (sipa avy eo) amin'ny fandaharam-potoana. Angamba, tamin'izany fotoana izany, ny fandefasana fiderana no fampiasa malaza indrindra amin'ny bot-ko, ary nankasitraka izany ny vadiko.

Izany. Manoratra aminay amin'ny Telegram ny mpamorona, mandefa tatitra amin'izy ireo amin'ny Telegram izahay... Ahoana raha tsy manoratra aminay izy ireo, fa amin'ny bot? Rehefa dinihina tokoa, dia ho tsara kokoa ho an'ny rehetra, ny tatitra dia ho azo haingana kokoa, ary ny tena zava-dehibe, dia mandalo antsika. Toy izany no nahaterahan'ny hevitra momba ny fiasa malaza voalohany ho an'ny bot-ko.

Nanomboka fampiharana aho. Nataoko izany, araka izay vitako, tamin'ny PHP (ny fampiharana anay dia ao amin'ny PHP, mahay kokoa aho noho ny Python). Tsy mahay coder aho, ka tsy hasehoko anao ny code-ko :)

Mipetraka ao amin'ny tambajotran'ny orinasanay ny bot ary afaka miditra amin'ny tetikasa sasany, anisan'izany ny angon-drakitra kendrena. Mba tsy hanelingelina ny masontsivana ao amin'ny ekipa na ny menio dia nampiako ity fampiasa ity amin'ny chat vondrona miaraka amin'ny fampahafantarana fanaraha-maso. Amin'izany fomba izany no ahafantaran'ilay bot avy hatrany hoe avy aiza ny angon-drakitra hanangonana ny tatitra.

Nahazo baiko toy ny /ao N, izay N dia ny isan'ny ora feno ilana tatitra (amin'ny alàlan'ny default - adiny 1), na dia mandritra ny herinandro aza, raha tsy naverina naverina ny angon-drakitra, dia manomboka miasa avy hatrany ny bot, manangona ny tatitra, mamoaka azy ho toy ny pejy web ary avy hatrany (eo ho eo) dia manome rohy mankany amin'ny tatitra tena ilaina.

Araho ny rohy ary indro, ny tatitra AWR:

Mitsitsy ny fotoana, ny nerveuse ary ny ora maha-olona izahay

Araka ny efa nampoizina, niatrika ny famokarana tatitra toy izany ireo mpamorona, ary nisy mihitsy aza nisaotra anay.

Rehefa nankasitraka ny fahafahan'ny ekipa dia naniry toy izany koa ireo mpitantana ny tetikasa avy amin'ny faritra hafa, satria mahazo betsaka indrindra avy amin'ny mpanjifa izy ireo ary manahy ny amin'ny fanatanterahana sy ny fisian'ny rafitra. Nampiako ny bot tamin'ny chat hafa. Mbola mampiasa an’izany izy ireo, ary faly aho.

Taty aoriana, fantatry ny mpiara-miasa ao amin'ny CIT ny fomba fanangonana tatitra ary te hanao izany koa izahay. Tsy nampidiriko tao amin'ny resadresakay izy ireo, namorona chat mitokana miaraka amin'ny famokarana tatitra momba ny fandaharam-potoana sy ny fangatahana.

/pgBadger

Manana fampiharana hafa amin'ny PHP koa izahay miaraka amin'ny PostgreSQL. Nampihatra ny fanangonana ny tatitry ny pgBadger ho an'ireo sahirana aho amin'ny fampiasana fitsipika mitovy - amin'ny resaka vondrona. Tamin'ny voalohany dia nampiasa azy io izy ireo, saingy nijanona. Ny fampiasa dia nesorina ho tsy ilaina.

/adidy

Ny sampan-draharaha misy anay dia manana fiambenana alina ary, araka izany, dia manana fandaharam-potoana. Ao amin'ny Google Sheets izy io. Tsy mora foana ny mitady rohy, manokatra tabilao, mitady ny tenanao ... Nilalao tamin'ny bot Telegram azy koa ny iray tamin'ireo mpiara-miasa tamiko taloha ary nampiditra izany tao amin'ny chat ao amin'ny departemantanay. fampahafantarana momba ny fanombohan'ny fampandehanan-draharaha ho an'ny mpiasan'ny sampana. Ny bot dia mamakafaka ny fandaharam-potoana, mamaritra ny olona miasa amin'ny daty ankehitriny ary, araka ny fandaharam-potoana na amin'ny fangatahana, dia mitatitra izay miasa anio. Tena tsara sy mety izany. Marina fa tsy tena tiako ny endrik'ireo hafatra. Ary koa, ho an'ny mpiasa amin'ny departemanta hafa (ohatra, BC "Medicine") dia tsy tena ilaina ny fampahalalana momba ireo miasa any amin'ny lalana hafa, fa mila mahafantatra izay miasa ao amin'ny "Medicine" ianao raha misy olana. Nanapa-kevitra ny "hindrana" ny fiasa aho, fa hanova izay tsy tiako. Nanao endrika hafatra mety ho an'ny tenako sy ny hafa aho, ka nesoriko ny fampahalalana tsy ilaina.

/tnls

Taorian'ny nanandrana ny automatique tamin'ny fampiasana bot Telegram, hevitra maro samihafa no niseho, saingy te-hanao zavatra tena ilaina aho. Nanapa-kevitra ny hitarika aho antontan'isa momba ny fangatahana. Mba hidirana amin'ny tetikasan'ny mpanjifanay, dia nametraka ilay antsoina hoe "server mitsambikina" na mpizara fandefasana. Ny fifandraisana VPN dia atsangana eo, avy eo ny seranana fampiharana, ny angon-drakitra ary ny fandefasana fanampiana hafa dia alefa any amin'ny tambajotra eo an-toerana amin'ny alàlan'ny ssh, mba hidirana mora amin'ny tetikasan'ny mpiasantsika, tsy misy olana amin'ny fifandraisana VPN. Ny hany ilainao dia ny manangana fifandraisana VPN amin'ny tambajotran'ny orinasanay.

Ny antontan'isa momba ny fangatahana dia naneho fa matetika, rehefa tsy nahomby ny iray amin'ireo tonelina (raha misy ny olana amin'ny tambajotra, noho ny fahatapahan'ny fotoana, ohatra), dia mifandray aminay ny olona momba ny famerenana ny fidirana amin'ny tetikasa. Amin'ny ankamaroan'ny toe-javatra, ny famerenana ny fifandraisana fotsiny dia ampy ary ny zava-drehetra dia tsara. Andeha isika hanao izany. Ity ny baiko:
Mitsitsy ny fotoana, ny nerveuse ary ny ora maha-olona izahay

"Latsaka" ao amin'ny sakafo tianao ianao, safidio ny tetikasanao, andraso kely dia faly sy afa-po ny rehetra...

Rehefa nahazo baiko, miaraka amin'ny fihetsehana kely amin'ny bytes sy bits, ny bot dia mifandray amin'ny mpizara fampitaovana, mahafantatra mialoha izay tokony hamerenana ny fandefasana, ary manao ny asany - mamerina ny fifandraisana amin'ny tetikasa. Nanoratra toromarika aho mba hahafahanao mamaha olana toy izany. Ary nifandray taminay ny olona raha tsy mandeha ny fitaovana nomena...

/ecp_to_pem

Ny antontan'isa fanampiny dia nampiseho fa matetika ilaina ny miova EDS Crypto Pro amin'ny format pem(Fototra64) ho an'ny fampidirana isan-karazany, ary manana azy ireo izahay. Asa: makà kaontenera, adikao amin'ny solosaina Windows miaraka amin'ny P12FromGostCSP utility napetraka (voaloa, raha ny marina), avadika ho pfx, ary avy eo avadika pfx mampiasa OpenSSL (miaraka amin'ny fanohanan'ny GOST encryption) ho pem. Tsy dia mety loatra izany, fa tianao amin'ny rantsan-tànanao.

Google dia tonga nanavotra indray. HITA fampiasan'ny olona tsara fanahy. Nanangona azy araka ny voasoratra ao amin'ny README aho - nahomby. Nampianatra ny bot hiasa amin'ny fitaovana aho ary nahazo fiovam-po saika avy hatrany.
Mitsitsy ny fotoana, ny nerveuse ary ny ora maha-olona izahay

Tamin'ny fotoana fampiharana farany dia nisy baiko navoaka mba hifindra amin'ny endrika fanafenana vaovao - gost-2012. Raha ny tadidiko, ny fitaovana tamin'izany fotoana izany dia niasa tamin'ny GOST taloha (2001), angamba fitaovana hafa mitovy amin'izany avy amin'ny olona tsara fanahy hafa, tsy tadidiko tsara.
Taorian'ny fifindrana mankany amin'ny GOST vaovao dia nesorina ny fiasan'ny bot noho ny antony fiarovana. Nampihatra izany tao anaty kaontenera docker.

Dockerfile, raha misy mila izany:

FROM ubuntu:16.04                                                                                                                                                                        
RUN apt update && apt -y install git sudo wget unzip gcc g++ make &&                        
   cd /srv/ && git clone https://github.com/kov-serg/get-cpcert.git &&                     
   cd get-cpcert && chmod +x *.sh && ./prepare.sh && ./build.sh &&                         
   mkdir -p /srv/{in,out} &&                                                               
   echo '#!/bin/bash' > /srv/getpem.sh &&                                                  
   echo 'cd /srv/get-cpcert' >> /srv/getpem.sh &&                                          
   echo './get-cpcert /srv/in/$CONT.000 $PASS > /srv/out/$CONT.pem' >> /srv/getpem.sh &&   
   chmod +x /srv/getpem.sh                                                                  ENTRYPOINT /srv/getpem.sh

Raha te hiova dia mila mametraka ny fitoeran-javatra tany am-boalohany (directory toy ny xxx.000) ao amin'ny lahatahiry /srv/in ianao, ary alao ny pem vita amin'ny /srv/out.

Hanova:

 docker run -t -i -e CONT='<имя директории с контейнером(без ".000")>' -e PASS='<пароль для контейнера>' -v /srv/in:/srv/in -v /srv/out:/srv/out --name ecptopem <адрес нашего репозитория>/med/ecptopem:latest 

/emstop sy /emstart

Indray andro, Oracle DBA tena mahafinaritra, manana traikefa be dia be amin'ny fitantanana sy fampandrosoana DBMS, nahazo asa tao amin'ny orinasanay. Ary avy hatrany dia nanana olana tamin'ny fifandraisana amin'ny mpizara DBMS tamin'ny ssh izy: tsy fantany hoe aiza na ahoana no hifandraisana, tsy voafaritra mazava ny fidirana, na tsy afaka mandefa zavatra ilainy amin'ny tenany izy. Eny ary, faly izahay manampy, nilaza taminy ny fomba hifandraisana, ary nandefa azy ny Enterprise Manager. Saingy mbola tsy nandeha ny zavatra tamin'ny ssh. Nanazava izany tsotra ny iray tamin'ireo mpiara-miasa tamiko: DBA madiodio :) Nanapa-kevitra izahay fa raha mila manitsy zavatra amin'ny mpizara izahay dia ny tenanay no hanao izany.

Ny EM indraindray dia mianjera amin'ny enta-mavesatra, ary mba hamerenana azy ... mila mifandray amin'ny ssh ianao ary manomboka amin'ny terminal. “Hay amin’izany ny mpitantana”, hoy ny fanapahan-kevitry ny mpiara-miasa vaovao. Ny entana mavesatra amin'ny DBMS dia tsy mahazatra antsika, ary matetika koa ny fangatahana hamerenana ny EM. Avy eo dia mitovy ny scenario: fihenjanana, fahasosorana ary fitadiavana vahaolana amin'ny olana. Noho izany, tao amin'ny chat vondrona iray ihany dia niseho ireto baiko manaraka ireto: /emstop sy /emstart.

Mitsitsy ny fotoana, ny nerveuse ary ny ora maha-olona izahay

/ mamono

Raha misy fifaninanana matanjaka ao amin'ny tahiry, ary mitranga izany indraindray, dia ilaina ny manala haingana ny tahiry. Ny fomba haingana indrindra dia ny famonoana ny dingana misy olana ... Mba hanaovana izany, mifandray amin'ny ssh, mamono -9 ... Hanampy ny bot!

Mitsitsy ny fotoana, ny nerveuse ary ny ora maha-olona izahay

Alexey dia nankasitraka ny ekipa ary nanome azy anarana feno fitiavana - "Kilyalka" na basy.
Indray andro, rehefa avy nijery ny fomba nisedra sy nijalian'i Alexey, niditra / namono xxx isaky ny dingana tsirairay aho, dia nanapa-kevitra ny hampiditra “baolina marobe” amin'ny basyy aho:

Mitsitsy ny fotoana, ny nerveuse ary ny ora maha-olona izahay

tsara kokoa izany! Ho anao ny zava-drehetra, Alexey, miasa fotsiny, ry malala!

Mazava ho azy fa voafetra ny ekipa manan-danja toy izany fidirana amin'ny user_id - "adala". Raha nahita ny fomba namonoan'i Lesha ny dingana teo amin'ny lohamilina angon-drakitra, dia maro ny olona nanandrana niditra tao amin'ny baiko miaraka amin'ny laharan'ny dingana kisendrasendra, saingy tsy afaka mamitaka ny bot-ko marani-tsaina ianao, nandà avy hatrany izy.

/alertlog

Eny, raha sanatria, nanao ny baiko aho:
/alertlog <isan'ny andalana> - mahazo ny isa voatondro amin'ny tsipika alertlog
Ny bot dia misintona alertlog ary mandefa izany amin'ny serivisy, toy ny pastebin, antsoina hoe pyste, ary mandefa rohy mankany amin'ny paste mankany amin'ny resaka fangatahana.

/tseky

Avy eo dia nisy fangatahana manara-maso ny tena zava-bitan'ny fampiharana anay. Hatramin'izao, ny fanohanana ara-teknika ny tetikasa dia nanangona izany angona izany tamin'ny tanana. Na inona na inona! Namolavola tranga fitsapana ho an'izany ireo mpanandrana mahery fo. Tsy dia mora vakiana ny diarin'ny fitsapana aterak'izany; ny mpampiasa tsy manana traikefa dia mila fotoana ela vao mahazo ary tsy azony antoka fa hanasongadina ny fampahalalana ilaina izy. Ary tsy tianay ny manao amin'ny tananay izay tsy vitanay amin'ny tananay... Asa vaovao ho an'ny bot!

Mitsitsy ny fotoana, ny nerveuse ary ny ora maha-olona izahay

Ny baiko /checks dia mampiseho sakafo tsotra sy tsy misy dikany; tamin'ity indray mitoraka ity dia nianatra ny fomba fampiasana an'io baiko io tsy misy toromarika ny lehilahy!

Rehefa misafidy ny zavatra irina ianao, fa tsy sakafo, dia misy fampahafantarana momba ny fanombohan'ny fitsapana, mba tsy hanatontosan'ny mpampiasa tsy manam-paharetana in-100500 ny fitsapana anay:

Mitsitsy ny fotoana, ny nerveuse ary ny ora maha-olona izahay

Miankina amin'ny singa menu nofantenana, misy fitsapana manokana atomboka avy amin'ny tambajotrantsika, izany hoe avy amin'ny milina misy ny bot (ny jmeter dia efa namboarina mialoha, misy ny fitsapana ilaina ...) na mivantana avy amin'ny foibe data (avy amin'ny a milina voaomana eo akaikin'ny fampiharana), mba hanilihana ny fifandraisana amin'ny tambajotra rehefa misy fahatarana ny fitsapana, na hampihena azy ireo ho faran'izay kely indrindra.

Rehefa vita ny fitsapana sy ny fandraisana ny diary, ny bot dia mamadika izany ary mamoaka ny valiny amin'ny endrika "voavaky ny olombelona":

Mitsitsy ny fotoana, ny nerveuse ary ny ora maha-olona izahay

Fanangonana metric

Tonga ny fonctionnaire ary nahazo asa toy izany ho an'ny faritra misy azy ireo mpitantana tetikasa liana. Ary hoy ny Mpitantana Tetikasa iray be fangorahana: “Te hanana antontan'isa momba ny fotoana aho!” Nisy avy ao amin'ny CIT nilaza taminy fa mety tsara ny manara-maso izany rehetra izany ao amin'ny Zabbix. Zabbix, ka Zabbix ...

Nieritreritra aho fa mila miomana amin'ny filàna mamerina indray ny vahaolana... Napetrako tao anaty fitoeran-docker ilay hevitra. Ao amin'ny kaontenera, ny jmeter dia atomboka amin'ny fandaharam-potoana (indray mandeha isaky ny 10 minitra), mametraka ny log amin'ny toerana iray, ny php dia mamadika azy ary mampiseho ny angona ilaina amin'ny endrika pejy web. Zabbix, mampiasa ny fanalahidin'ny web.page.get, dia mandray ity pejy ity, mifidy tsy tapaka ny angona ilaina ho an'ny singa miankina sasany ary manangana grafika.

Mitsitsy ny fotoana, ny nerveuse ary ny ora maha-olona izahay

Heveriko fa tsy ratsy izany. Amin'ny fandinihana ny grafika dia hitantsika aloha ny hafainganam-pandehan'ny fampiharana, ary raha hita eo amin'ny tabilao ny tampon'isa, dia fantatsika ny toerana misy ny "plug". Tsotra izany. Hatreto aloha dia any amin’ny faritra iray ihany no tadiavina fa vonona ny hamerina izany aho ho an’izay liana.

Fampivoarana fampiharana

Ny antontan'isa momba ny asa mitovy amin'izany dia vao haingana no niteraka hevitra bebe kokoa hanatsorana sy hanamora ny asa. Amin'ny tetikasa sasany, amin'ny lohamilina fampiharana, dia ilaina ny mametraka ny kaontenera Crypto Pro manan-danja, maro amin'izy ireo, ary ny sonia nomerika dia lany daty rehefa mandeha ny fotoana. Indraindray asa 2 tonga isan'andro. Saingy noheveriko fa tsy azo antoka ny fampiasana bot ho an'ireo tanjona ireo ary nanapa-kevitra aho fa hamorona ny fiasa mivantana amin'ny fampiharana. Mazava ho azy miaraka amin'ny fanomezan-dàlana sy fanamarinana ny zo fidirana. Raha manana tombotsoa ilaina ianao dia misy singa menu fanampiny azo ampiasaina amin'ny fiasana amin'ny sonia nomerika, fametrahana, famafana, fijerena vaovao, sns. Eo am-pamolavolana ny fampiasa amin'izao fotoana izao. Raha ny fantatra dia tsy dia sarotra loatra izany, mila mamaky kely ny torolàlana efa misy ianao, jereo ny ohatra code, anontanio ny mpiara-miasa efa za-draharaha kokoa amin'ny fampandrosoana, ary avy eo dia ataovy izany. Nandritra ny dingan'ny fikarohana dia nipoitra ny hevitra hanampiana ny fampiharana. Tsy hanao drafitra Napoleonika aho - misy ny fampandrosoana, avelao ny tsirairay hieritreritra ny raharahany. Fa na dia mahaliana aza dia ny tenako no manao izany.

Plans

Araka ny nolazaiko, hevitra maro samihafa no teraka tamin'ny fampiasana ny bot-nay fa tsy hoe - amin'ny ankapobeny, andao atao hoe hevitra momba ny "point automatique", maro amin'izy ireo no adino, satria tsy nanam-potoana hanoratra azy ireo aho. Miezaka manoratra izay rehetra tonga ao an-tsaina aho izao, ary manoro hevitra aho mba hanao toy izany koa ny hafa.

Saingy tsy hadinon'i Alexey ny hanome ny faniriany. Avy amin'ny farany:
/kill_sql SQL_ID - vonoy ny fivoriana rehetra miaraka amin'ity fangatahana SQL_ID ity
/kill_block - vonoy ny fivoriana fanakanana faka
/show_em - asehoy ny sarin'ny fampisehoana EM
Lehilahy fetsifetsy izy, te hanjaitra DBA amin'ny findainy =)

Izany no fomba fiasantsika ho tombontsoan’ny Tanindrazana!

Ahoana no hialanao amin'ny asa mahazatra sy tsy mahaliana anao?

Manantena aho fa nahaliana ny famakiana, ary mety ho mahasoa olona mihitsy aza, ary tsy nanam-potoana hankaleo ny mpamaky aho ... Mirary soa ho antsika rehetra.

Source: www.habr.com

Add a comment