db.dobo.sk

postgres klienti – jak rucne vyextrahovat

bez komentára

Dnes som v praci riesil taku picovinku, ktoru si poznamenavam, ak by som to o pol roku zase potreboval. Ukol znel jasne: dve davky. Potrebujem 1. zoznam vsetkych, ktori sa za den pripojovali k DB a parametry tohto spojenia 2. zoznam ich hostnamov

Dost dobre sa to da riesit len rozparsovanim databazoveho logu, ak teda clovek nechce na to pouzivat nejake udelatka 3. stran. Vyhrnut si rukavy a ideme rezat log…

awk -F ‘host=’ ‘{print $2}’ DB_LOG.log | awk ‘{print $1}’ | grep . | sort -t, -u -k1,1 > /root/connection_list_extended = vyseka z logu spojenie s jeho podrobnostami. -F ‘host=’ je “delitkom” vo vyraze awku, vyprintuje a vycisti to, vysortuje podla jedinecnych hodnot na zaklade IP. Typicky vystup:
10.4.216.37,app=backoffice-admin,user=app_backoffice_connector,xid=0

awk -F ‘,’ ‘{print $1}’ connection_list_extended > connection_list = awk vysekne z predchadzajuceho listu len prvu polozku, t.j. IP. Nad tou sa potom spusti loop, ktory urobi zoznam hostnamov:

#!/bin/bash
while read ipka; do
nslookup “$ipka” | grep ‘name’ | awk -F ‘= ‘ ‘{print $2}’ >> connection_hostnames
done < connection_list

píše: ďobo

June 23rd, 2020 o 10:25 pm

chlievik: postgresql

okomentuj