Bidh sinn a’ sàbhaladh ùine, nerves agus uairean-duine

Tha na pròiseactan againn mar as trice roinneil, agus mar as trice is e ministrealachd a th’ anns an luchd-dèiligidh. Ach, a bharrachd air an roinn phoblaich, bidh buidhnean prìobhaideach cuideachd a’ cleachdadh ar siostaman. Cha mhòr nach eil duilgheadasan ann leotha.

Mar sin, tha na prìomh phròiseactan roinneil, agus uaireannan tha duilgheadasan ann leotha. Mar eisimpleir, le coileanadh, nuair a tha ann an roinnean tha còrr air 20k de ar luchd-cleachdaidh prìseil rè na h-ùine de bhith a’ sgaoileadh gnìomhachd ùr air frithealaichean toraidh. Is e pian a th’ ann…

Is e m ’ainm Ruslan agus tha mi a’ toirt taic do shiostaman fiosrachaidh BARS Group agus a’ leasachadh bot marbhadh airson DBAn sreathach fòirneartach. Chan eil an dreuchd seo airson cridhe lag - tha tòrr litrichean is dealbhan ann.

Bidh sinn a’ sàbhaladh ùine, nerves agus uairean-duine

/uair

Bidh cuid de na tagraidhean againn a’ ruith air Oracle DBMS. Tha pròiseactan ann cuideachd air an PostgreSQL DBMS. Tha rud iongantach aig Oracle - a’ cruinneachadh staitistig air an luchd air an DBMS, a tha a’ nochdadh duilgheadasan a th’ ann mar-thà agus eadhon a’ dèanamh mholaidhean airson cuir às - Stòr-tasgaidh Uallach Obrach fèin-ghluasadach (AWR). Aig aon àm (is e sin aig an àm pian), an luchd-leasachaidh daonnan ag iarraidh a chruinneachadh Aithisgean AWR airson mion-sgrùdadh coileanaidh. Chaidh sinn gu h-onarach gu frithealaiche DBMS, chruinnich sinn aithisgean, thug sinn thugainn iad agus chuir sinn gu riochdachadh airson mion-sgrùdadh. Às deidh a’ 5mh uair dh’ fhàs e buaireasach... às deidh an 10mh dh’ fhàs e iriosal...

Chuir aon de mo cho-obraichean an cèill aon uair am beachd gum bu chòir a h-uile càil a thèid a dhèanamh barrachd air aon uair a bhith fèin-ghluasadach. Gu ruige àm an irioslachaidh, a bhith onarach, cha do smaoinich mi mu dheidhinn agus dh’ fheuch mi ri gach nì a dh’ fhaodadh a bhith fèin-ghluasadach a dhèanamh fèin-ghluasadach, ach gu tric cha robh iarrtas ann agus b’ e barrachd rannsachaidh a bh’ ann seach nàdar gnìomhaichte.

Agus an uairsin smaoinich mi: “Chan eil feum air luchd-rianachd gus aithisg a ghineadh...”. Às deidh na h-uile, tha cruinneachadh aithisg a’ ciallachadh a bhith a’ cur an gnìomh an sgriobt sql @$ORACLE_HOME/rdbms/admin/awrrpt.sql agus a’ toirt na h-aithisg bhon t-seirbheisiche chun àite agad... O tha, chan eil sinn a’ ceadachadh leasachadh airson cinneasachadh.

An uairsin rinn mi Googled am fiosrachadh riatanach, chruthaich mi an gnìomh bhon artaigil air a’ bhunait deuchainn, ruith mi an sgriobt agus am mìorbhail - chaidh an aithisg a chuir ri chèile agus faodar a shàbhaladh gu h-ionadail. Cruthaich gnìomhan far an robh feum air aithisgean AWR gu tric agus dh’ innis iad do luchd-leasachaidh mar a chleachdas iad iad.

Timcheall air an àm seo, anns an ùine shaor agam, às deidh dhomh bruidhinn ri @BotFather, chruthaich mi bot Telegram dhomh fhìn, dìreach airson spòrs. Chuir mi a-steach gnìomh sìmplidh an sin - seall an ùine a th’ ann an-dràsta, ìrean iomlaid, an aimsir, ionnsaich e molaidhean a chuir gu mo bhean (an uairsin leannan) air clàr-ama. Is dòcha, aig an àm sin, gur e a bhith a’ cur mholaidhean an gnìomh as mòr-chòrdte den bhot agam, agus chuir mo bhean meas air.

Mar sin. Bidh luchd-leasachaidh a’ sgrìobhadh thugainn ann an Telegram, bidh sinn a’ cur aithisg thuca ann an Telegram... Dè ma sgrìobhas iad chan ann thugainn, ach gu bot? Às deidh na h-uile, bidh e na b 'fheàrr airson a h-uile duine, gheibhear an aithisg nas luaithe, agus as cudromaiche, a' dol seachad oirnn. Seo mar a rugadh am beachd air a’ chiad fheart mòr-chòrdte airson mo bot.

Thòisich mi air a bhuileachadh. Rinn mi e, mar a b’ fheàrr a b’ urrainn dhomh, ann am PHP (tha an tagradh againn fhèin ann am PHP, tha mi nas eòlaiche air na ann am Python). Chan e còdair math a th’ annam, mar sin cha sheall mi dhut mo chòd :)

Tha am bot a’ fuireach air an lìonra corporra againn agus tha cothrom aige air pròiseactan sònraichte, a’ toirt a-steach stòran-dàta targaidte. Gus nach cuir thu dragh air paramadairean san sgioba no sa chlàr, chuir mi an gnìomh seo ris a ’chòmhradh buidhne le brathan sgrùdaidh. San dòigh seo bidh fios aig a’ bhot sa bhad cò às a bu chòir an aithisg a chruinneachadh.

An dèidh òrdugh fhaighinn mar /uair N, far a bheil N an àireamh de dh'uairean slàn airson a bheil feum air aithisg (gu bunaiteach - 1 uair), eadhon airson seachdain, mura deach an stòr-dàta ath-thòiseachadh, tòisichidh am bot ag obair sa bhad, cruinnichidh e an aithisg, foillsichidh e mar a duilleag-lìn agus sa bhad (cha mhòr an sin) a’ toirt seachad ceangal ris an aithisg air a bheil feum mòr.

Lean an ceangal agus seo e, aithisg AWR:

Bidh sinn a’ sàbhaladh ùine, nerves agus uairean-duine

Mar a bhiodh dùil, dhèilig an luchd-leasachaidh ri leithid de dh’ aithrisean, agus thug cuid eadhon taing dhuinn.

Às deidh dhaibh luach a chuir air goireasachd an sgioba, bha manaidsearan pròiseict bho roinnean eile ag iarraidh an aon rud, leis gu bheil iad a ’faighinn a’ mhòr-chuid bhon neach-ceannach agus gu bheil dragh orra mu choileanadh agus cothrom air siostaman. Chuir mi am bot ri cabadaich eile. Bidh iad fhathast ga chleachdadh, agus tha mi toilichte mu dheidhinn.

Nas fhaide air adhart, fhuair co-obraichean bho CIT a-mach mar a bhios sinn a’ cruinneachadh aithisgean agus bha iad airson a dhèanamh cuideachd. Cha do chuir mi iad ris na còmhraidhean againn, chruthaich mi còmhradh air leth leis a’ ghinealach de dh’ aithisgean air clàr-ama agus air iarrtas.

/pgBadair

Tha tagraidhean eile againn cuideachd ann am PHP an co-bhonn ri PostgreSQL. Chuir mi an gnìomh cruinneachadh de aithisgean pgBadger dhaibhsan a bha feumach a’ cleachdadh an aon phrionnsapal - ann an cabadaich buidhne. An toiseach chleachd iad e, ach an uairsin stad iad. Chaidh an comas-gnìomh a ghearradh a-mach mar rud neo-riatanach.

/dleasdanas

Tha gluasadan oidhche aig an roinn againn agus, mar sin, tha clàr-ama aice. Tha e ann an Google Sheets. Chan eil e an-còmhnaidh goireasach a bhith a’ coimhead airson ceangal, fosgail clàr, coimhead dhut fhèin ... fiosan mu thoiseach gluasad dleastanais airson luchd-obrach na roinne. Bidh am bot a’ sgrùdadh a’ chlàr, a’ dearbhadh an neach a tha air dleasdanas ron cheann-latha làithreach agus, a rèir a’ chlàr-ama no ma thèid iarraidh, ag aithris cò a tha air dleasdanas an-diugh. Thionndaidh e a-mach sgoinneil agus goireasach. Fìor, cha do chòrd cruth nam brathan rium gu mòr. Cuideachd, airson luchd-obrach ann an roinn eile (mar eisimpleir, BC "Leigheas"), chan eil feum dha-rìribh air fiosrachadh mun fheadhainn a tha air dleasdanas ann an stiùireadh eile, ach feumaidh fios a bhith agad cò a tha air dleasdanas ann an “Leigheas” ma tha duilgheadasan ann. Cho-dhùin mi “iasad” a dhèanamh air a ’ghnìomhachd, ach atharraich na rudan nach do chòrd rium. Rinn mi cruth teachdaireachd a bha iomchaidh dhomh fhìn agus do dhaoine eile, a’ toirt air falbh fiosrachadh neo-riatanach.

/tnls

Às deidh dhomh fèin-ghluasad fheuchainn a ’cleachdadh bot Telegram, nochd mòran bheachdan eadar-dhealaichte, ach bha mi airson rudan a bha riatanach a dhèanamh. Cho-dhùin mi stiùireadh staitistig air iarrtasan. Gus faighinn gu pròiseactan ar teachdaichean, tha sinn air “frithealaiche leum” no frithealaiche air adhart a chuir an gnìomh. Tha ceanglaichean VPN air an togail air, an uairsin bidh puirt tagraidh, stòran-dàta agus cuir air adhart cuideachaidh eile air an cur air adhart chun lìonra ionadail againn tro ssh, airson faighinn gu furasta gu pròiseactan ar luchd-obrach, gun duilgheadasan le ceanglaichean VPN. Chan eil agad ach ceangal VPN a stèidheachadh ris an lìonra corporra againn.

Tha staitistig iarrtasan air sealltainn gu bheil gu tric, an dèidh aon de na tunailean a 'fàilligeadh (ann an cùis trioblaidean lìonra, air sgàth ùine-ama, mar eisimpleir), daoine fios thugainn mu ath-nuadhachadh cothrom air a' phròiseact. Anns a 'mhòr-chuid de chùisean, tha e gu leòr dìreach an ceangal ath-thòiseachadh agus tha a h-uile dad ceart. Dèanamaid e fhèin e. Seo an àithne:
Bidh sinn a’ sàbhaladh ùine, nerves agus uairean-duine

Bidh thu “a’ tuiteam troimhe ”a-steach don rud clàr a tha thu ag iarraidh, tagh do phròiseact, fuirich mionaid agus tha a h-uile duine toilichte agus riaraichte ...

Nuair a gheibh e àithne, le gluasad beag de na bytes agus na pìosan, bidh am bot a’ ceangal ris an t-seirbheisiche air adhart, le fios ro-làimh dè an gluasad air adhart a dh’ fheumar ath-thòiseachadh, agus nì e an obair aige - ag ath-nuadhachadh a ’cheangail ris a’ phròiseact. Sgrìobh mi stiùireadh gus an urrainn dhut ceistean mar sin fhuasgladh leat fhèin. Agus cha do chuir daoine fios thugainn ach mura obraich an inneal a chaidh a thoirt seachad ...

/ecp_gu_pem

Sheall staitistig eile gu bheil feum air tionndadh gu tric EDS Crypto Pro ann an cruth pem(Base64) airson diofar aonachadh, agus tha tòrr dhiubh againn. Gnìomh: gabh soitheach, dèan lethbhreac dheth gu coimpiutair Windows leis a ’ghoireas P12FromGostCSP air a chuir a-steach (pàighte, co-dhiù), tionndaidh gu pfx, agus an uairsin tionndaidh pfx le bhith a’ cleachdadh OpenSSL (le taic airson crioptachadh GOST) gu pem. Chan eil e gu math goireasach, ach tha thu ga iarraidh aig snap do chorragan.

Tha Google air tighinn gu teasairginn a-rithist. Fhuaras goireas duine caoimhneil. Chruinnich mi e mar a tha e sgrìobhte san README - dh’ obraich e. Dh'ionnsaich mi am bot a bhith ag obair leis a 'ghoireas agus fhuair mi tionndadh cha mhòr sa bhad.
Bidh sinn a’ sàbhaladh ùine, nerves agus uairean-duine

Mun àm a chaidh a bhuileachadh mu dheireadh, chaidh òrdugh atharrachadh gu cruth crioptachaidh ùr - gost-2012. Cho fad ‘s a chuimhnicheas mi, cha robh an goireas aig an àm sin ag obair ach leis an t-seann GOST (2001), is dòcha gur e goireas eile den aon seòrsa a bh’ ann bho neach còir eile, chan eil cuimhne agam gu cinnteach.
Às deidh an gluasad gu GOST ùr, chaidh gnìomhachd a ’bot a thoirt air falbh airson adhbharan tèarainteachd. Chuir e an gnìomh e ann an soitheach docker.

Dockerfile, air eagal gu bheil feum aig duine air:

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

Gus tionndadh, feumaidh tu an soitheach tùsail (eòlaire mar xxx.000) a chuir anns an eòlaire / srv/in, agus thoir am pem crìochnaichte gu / srv/out.

Airson tionndadh:

 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 agus /emstart

Aon latha, fhuair Oracle DBA fìor fhionnar, le tòrr eòlas ann an rianachd agus leasachadh DBMS, obair aig a’ chompanaidh againn. Agus bha duilgheadas aige sa bhad a bhith a’ ceangal ris na frithealaichean DBMS le ssh: chan eil fios aige càite no ciamar a nì e ceangal, chan eil an ruigsinneachd air a mhìneachadh gu soilleir, no chan urrainn dha rudeigin a dh’ fheumas e a chuir air adhart thuige fhèin. Uill, tha sinn toilichte do chuideachadh, dh’ innis sinn dha mar a nì thu ceangal, agus chuir sinn air adhart e mar Mhanaidsear Iomairt. Ach cha do dh’obraich cùisean a-mach le ssh fhathast. Mhìnich aon de mo cho-obraichean e gu sìmplidh: DBA fìor-ghlan :) Cho-dhùin sinn ma dh’ fheumas sinn rudeigin a chuir air an t-seirbheisiche, gun dèan sinn sinn fhìn e.

Bidh EM uaireannan a’ tuiteam fo luchd trom, agus airson ath-thòiseachadh… feumaidh tu ceangal tro ssh agus ath-thòiseachadh tron ​​inneal-crìochnachaidh. “Tha luchd-rianachd math air seo,” cho-dhùin ar co-obraiche ùr. Chan eil luchdan troma air an DBMS neo-àbhaisteach dhuinne, agus tha iarrtasan airson EM ath-thòiseachadh cumanta cuideachd. An uairsin an aon suidheachadh: teannachadh, irioslachd agus lorg fuasgladh don duilgheadas. Mar sin anns an aon chòmhraidhean buidhne nochd na h-òrdughan a leanas: /emstop agus /emstart.

Bidh sinn a’ sàbhaladh ùine, nerves agus uairean-duine

/marbhadh

Ma tha farpais làidir air an stòr-dàta, agus uaireannan bidh seo a’ tachairt, feumar an stòr-dàta a luchdachadh sìos gu sgiobalta. Is e an dòigh as luaithe am pròiseas trioblaideach a mharbhadh... Gus seo a dhèanamh, ceangail tro ssh, marbhadh -9... Cuidichidh am bot!

Bidh sinn a’ sàbhaladh ùine, nerves agus uairean-duine

Chuir Alexei meas air an sgioba agus thug e ainm gràdhach dha - "Kilalka" neo gunna.
Aon latha, às deidh dhomh coimhead air mar a dh’ fheuch agus a dh ’fhuiling Alexey, a’ dol a-steach / a ’marbhadh xxx a h-uile uair airson gach pròiseas, chuir mi romham “ioma-bharaille” a chuir ris a ’ghunna againn:

Bidh sinn a’ sàbhaladh ùine, nerves agus uairean-duine

Tha sin nas fheàrr! Tha a h-uile dad dhutsa, Alexei, dìreach obraich, a ghràidh!

Gu nàdarra, bha sgioba cho cudromach cuingealaichte ruigsinneachd le user_id - “foolproof”. A ’faicinn mar a bhios Lesha a’ marbhadh phròiseasan air frithealaiche an stòr-dàta, dh ’fheuch grunn dhaoine ri òrdugh a chuir a-steach le àireamh pròiseas air thuaiream, ach chan urrainn dhut am bot smart agam a mhealladh, dhiùlt e sa bhad.

/log rabhaidh

Uill, dìreach gun fhios, rinn mi an àithne:
/alertlog - faigh an àireamh ainmichte de loidhnichean rabhaidh
Bidh am bot a’ tarraing log rabhaidh agus ga chuir chun t-seirbheis againn, leithid pastebin, ris an canar pyste, agus a’ cur ceangal chun taois chun chat iarrtas.

/seic

An ath rud thàinig iarrtas airson a’ cumail sùil air fìor choileanadh an tagraidh againn. Gu ruige seo, chruinnich taic theicnigeach pròiseict an dàta seo le làimh. Ge bith! Tha an luchd-dearbhaidh treun againn air cùisean deuchainn a leasachadh airson seo. Chan eil an log deuchainn a thig às gu math goireasach ri leughadh; bheir neach-cleachdaidh gun eòlas ùine mhòr airson a thuigsinn agus chan eil e cinnteach an toir e cuideam air an fhiosrachadh riatanach. Agus cha toil leinn a bhith a’ dèanamh le ar làmhan an rud nach urrainn dhuinn a dhèanamh le ar làmhan... Gnìomh ùr airson a’ bhot!

Bidh sinn a’ sàbhaladh ùine, nerves agus uairean-duine

Tha an àithne / checks a’ taisbeanadh clàr-taice sìmplidh gun teagamh; an turas seo dh’ ionnsaich na balaich againn mar a chleachdas iad an àithne seo gun stiùireadh!

Nuair a thaghas tu an rud a tha thu ag iarraidh, an àite clàr, nochdaidh fios mu thoiseach na deuchainn, gus nach bi luchd-cleachdaidh mì-fhoighidneach a’ ruith ar deuchainn 100500 uair:

Bidh sinn a’ sàbhaladh ùine, nerves agus uairean-duine

A rèir an nì clàr taghte, thèid deuchainn sònraichte a chuir air bhog bhon lìonra againn, is e sin bhon inneal far a bheil am bot a ’fuireach (tha jmeter air a rèiteachadh ro-làimh an sin, tha na deuchainnean riatanach suidhichte ...) no gu dìreach bhon ionad dàta (bho a. inneal ullaichte ri taobh an tagraidh), gus ceanglaichean lìonra a thoirmeasg nuair a thathar a’ dèanamh deuchainn air dàil, no gus an lughdachadh chun ìre as ìsle.

Às deidh an deuchainn a chrìochnachadh agus an log fhaighinn, bidh am bot ga pharsadh agus a’ toirt a-mach an toradh ann am foirm “a ghabhas leughadh le daoine”:

Bidh sinn a’ sàbhaladh ùine, nerves agus uairean-duine

Cruinneachadh de mheatailt

Tha an comas-gnìomh air ruighinn agus tha manaidsearan pròiseict le ùidh air a leithid fhaighinn airson na sgìrean aca. Agus thuirt aon Mhanaidsear Pròiseict tròcaireach: “Tha mi airson staitistig ùine a bhith agam!” Thuirt cuideigin bho CIT rithe gum biodh e goireasach sùil a chumail air a h-uile càil seo ann an Zabbix. Zabbix, mar sin Zabbix ...

Bha mi a 'smaoineachadh gum feumadh mi ullachadh airson an fheum air am fuasgladh ath-riochdachadh ... chuir mi am beachd ann an soitheach docker. Anns a 'ghobhar, thèid jmeter a chuir air bhog air clàr-ama (aon uair gach 10 mionaidean), cuiridh e an log ann an àite sònraichte, bidh php ga pharsadh agus a' taisbeanadh an dàta riatanach ann an cruth duilleag-lìn. Bidh Zabbix, a 'cleachdadh an iuchair web.page.get, a' faighinn na duilleige seo, a 'taghadh an dàta riatanach gu cunbhalach airson cuid de na h-eileamaidean eisimeileach agus a' togail graf.

Bidh sinn a’ sàbhaladh ùine, nerves agus uairean-duine

Tha mi a’ smaoineachadh nach robh e dona. Le bhith ag amharc air a’ ghraf, chì sinn, an toiseach, astar tuairmseach an tagraidh, agus ma lorgar stùcan air a’ ghraf, tha fios againn timcheall air far a bheil am “plug”. Tha e sìmplidh. Gu ruige seo tha iarrtas air a bhith ann airson aon roinn a-mhàin, ach tha mi deiseil airson ath-riochdachadh dhaibhsan aig a bheil ùidh.

Leasachadh tagradh

O chionn ghoirid tha staitistigs air gnìomhan co-chosmhail air barrachd bheachdan adhbhrachadh airson obair a dhèanamh nas sìmplidhe agus a dhèanamh nas fhasa. Air cuid de phròiseactan, air frithealaichean tagraidh, feumar prìomh shoithichean Crypto Pro a chuir a-steach, tha mòran dhiubh ann, agus thig an ainm-sgrìobhte didseatach gu crìch thar ùine. Uaireannan thig 2 ghnìomh gach latha. Ach bha mi den bheachd gu robh e mì-shàbhailte bot a chleachdadh airson na h-adhbharan sin agus cho-dhùin mi gun cruthaichinn an gnìomh gu dìreach san tagradh. Gu nàdarra le cead agus sgrùdadh còraichean-slighe. Ma tha na sochairean riatanach agad, bidh rud clàr a bharrachd ri fhaighinn airson obrachadh le ainmean didseatach, stàladh, cuir às, coimhead air fiosrachadh, msaa. Tha an gnìomh ga leasachadh an-dràsta. Mar a thionndaidh e a-mach, chan eil seo gu math duilich, cha leig thu leas ach an stiùireadh a th ’ann a leughadh beagan, coimhead air eisimpleirean còd, faighnich do cho-obraichean nas eòlaiche ann an leasachadh, agus an uairsin dèan e. Tron phròiseas rannsachaidh, nochd beachdan airson cur ris an tagradh. Cha dèan mi planaichean Napoleon - tha leasachadh ann, leig leis a h-uile duine aire a thoirt don ghnìomhachas aca fhèin. Ach ged a tha e inntinneach, tha mi ga dhèanamh mi-fhìn.

Planaichean

Mar a thuirt mi, rugadh mòran bheachdan eadar-dhealaichte airson a bhith a’ cleachdadh ar bot agus chan ann a-mhàin - san fharsaingeachd, canaidh sinn, beachdan airson “puingean fèin-ghluasaid”, chaidh mòran dhiubh a dhìochuimhneachadh, leis nach robh tìde agam an sgrìobhadh sìos. A-nis bidh mi a’ feuchainn ri sgrìobhadh sìos a h-uile dad a thig nam inntinn, agus tha mi a’ moladh gun dèan daoine eile an aon rud.

Ach na dìochuimhnich Alexei a mhiannan a thoirt seachad. Bhon fhear as ùire:
/ kill_sql SQL_ID - cuir às do gach seisean leis an iarrtas SQL_ID seo
/marbhadh_bloc - cuir às don t-seisean bacaidh freumhan
/taisbean_em - seall dealbh de choileanadh EM
'S e gille glic a th' ann, tha e airson DBA fhuaigheal bhon fhòn aige =)

Seo mar a bhios sinn ag obair airson buannachd an Motherland!

Ciamar a chuireas tu às do ghnìomhan àbhaisteach agus neo-inntinneach?

Tha mi an dòchas gun robh an leughadh inntinneach, agus is dòcha eadhon feumail do chuideigin, agus cha robh tìde agam an leughadair a ghiùlan... Math fortanach dhuinn uile.

Source: www.habr.com

Cuir beachd ann