PostgreSQL рд▓реЙрдЧ рдореЗрдВ рддреНрд░реБрдЯрд┐рдпреЛрдВ рдФрд░ рдШрдЯрдирд╛рдУрдВ рдХреА рдирд┐рдЧрд░рд╛рдиреА рдХрд░рдирд╛ (grok_exporter)

рд╢реБрдн рджреЛрдкрд╣рд░, рд╕рд╣рдХрд░реНрдорд┐рдпреЛрдВ рдФрд░ рд╣реЗрдмреНрд░рдЪрд┐рдХреА! рдЖрдЬ, рдореИрдВ рдЖрдкрдХреЗ рд╕рд╛рде рдПрдХ рдЫреЛрдЯрд╛ рд╕рд╛ рдиреЛрдЯ рд╕рд╛рдЭрд╛ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ рдХрд┐ рдЖрдк рдкреНрд░реЛрдореЗрдерд┐рдпрд╕ рдФрд░ рдореЗрдЯреНрд░рд┐рдХреНрд╕ grok_exporter рдХреЗ рдирд┐рд░реНрдпрд╛рддрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ PostgreSQL рд▓реЙрдЧ рдореЗрдВ рджрд┐рдЦрд╛рдИ рджреЗрдиреЗ рд╡рд╛рд▓реА рддреНрд░реБрдЯрд┐рдпреЛрдВ рдФрд░ рдШрдЯрдирд╛рдУрдВ рдХреЗ рд╕рдВрдЪрд╛рд▓рди рдХреА рдирд┐рдЧрд░рд╛рдиреА рдХреИрд╕реЗ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

рдореБрдЭреЗ рддреБрд░рдВрдд рдХрд╣рдирд╛ рд╣реЛрдЧрд╛ рдХрд┐ рдпрд╣ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдЗрд╕ рдирд┐рд░реНрдпрд╛рддрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХрд╛ рдПрдХ рд╡рд┐рд╢реЗрд╖ рдорд╛рдорд▓рд╛ рд╣реИред рддреЛ рдЗрд╕рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдХреНрдпреЛрдВ рд╣реИ рдФрд░ рдХрд┐рд╕реЗ рд░реБрдЪрд┐ рд╣реЛ рд╕рдХрддреА рд╣реИ?

рдкрд░рд┐рдЪрдп


рдЗрд╕рдХреА рдЬрд░реВрд░рдд рдХрд┐рд╕реЗ рд╣реИ?


рдпрджрд┐ рдкреНрд░реЛрдореЗрдерд┐рдпрд╕ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдЖрдкрдХреЗ рдмреБрдирд┐рдпрд╛рджреА рдврд╛рдВрдЪреЗ рдореЗрдВ рдореМрдЬреВрдж рд╣реИ рдФрд░ рд▓реЙрдЧ рдХреЛ рдЗрдХрдЯреНрдард╛ рдХрд░рдиреЗ рдФрд░ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдЕрд▓рдЧ рдмреБрдирд┐рдпрд╛рджреА рдврд╛рдВрдЪрд╛ рдмрдирд╛рдирд╛, рдЬреИрд╕реЗ рдХрд┐ рдИрдПрд▓рдХреЗ рдпрд╛ рдЧреНрд░реЗрдЧреНрд▓реЛрдЧ, рдорд╣рдВрдЧрд╛ рдФрд░ рдЕрд╡реНрдпрд╡рд╣рд╛рд░рд┐рдХ рд╣реИ (рдЕрдЧрд░ рдХреЛрдИ рдкреНрд░реЛрдореЗрдерд┐рдпрд╕ рдирд╣реАрдВ рд╣реИ, рддреЛ рдпрд╣ рдХреЛрдИ рд╕рдорд╕реНрдпрд╛ рдирд╣реАрдВ рд╣реИ, рдпрд╣ рдЖрд╕рд╛рди рдФрд░ рддреНрд╡рд░рд┐рдд рд░реВрдк рд╕реЗ рд╕реНрдерд╛рдкрд┐рдд рд╣реИ)ред

рдпрд╣ рдЯреВрд▓ рди рдХреЗрд╡рд▓ рдбреАрдмреАрдП рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧреА рд╣реЛрдЧрд╛, рдмрд▓реНрдХрд┐ рдПрдкреНрд▓реАрдХреЗрд╢рди рдПрдбрдорд┐рдирд┐рд╕реНрдЯреНрд░реЗрдЯрд░ рдХреЗ рд▓рд┐рдП рднреА, рд╕рд╛рдорд╛рдиреНрдп рддреМрд░ рдкрд░, рдЙрди рд╕рднреА рдХреЗ рд▓рд┐рдП рдЬреЛ рдХрд┐рд╕реА рддрд░рд╣ рд╕реЗ рдПрдкреНрд▓реАрдХреЗрд╢рди рд▓реЙрдЧ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рддреЗ рд╣реИрдВред рдпрд╣ рдЖрдкрдХреЛ рд╕реНрд╡рддрдВрддреНрд░ рд░реВрдк рд╕реЗ рд╡реНрдпрд╡рд╣рд╛рд░ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╛рдирдХрд╛рд░реА рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ рдФрд░ рд╕реНрдерд┐рддрд┐ рдХреЗ рдЖрдЧреЗ рдХреЗ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХреЗ рд▓рд┐рдП рдПрдХ рдирд┐рд╢реНрдЪрд┐рдд рд╕рдВрджрд░реНрдн рдмрд┐рдВрджреБ рд╣реИред

рдпрд╣ рд╕рдм рдХрд┐рд╕ рд▓рд┐рдП рд╣реИ?


рдирд┐рдЧрд░рд╛рдиреА рд▓реЙрдЧ рдЖрдкрдХреЛ рдЕрдзрд┐рдХ рд╕рдВрдкреВрд░реНрдг рдЪрд┐рддреНрд░ рд░рдЦрдиреЗ рдФрд░ рдЙрднрд░рддреА рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдЕрдзрд┐рдХ рддреЗрдЬрд╝реА рд╕реЗ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрдЧрд╛, рдпрд╣ рд╣реЛ: рдкреНрд░рд╛рдзрд┐рдХрд░рдг рдХреЗ рдкреНрд░рдпрд╛рд╕ (рдЕрд╕рдлрд▓ рд▓реЛрдЧреЛрдВ рд╕рд╣рд┐рдд), рд╡рд┐рднрд┐рдиреНрди рддреНрд░реБрдЯрд┐рдпрд╛рдВ, рдпрд╛ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдШрдЯрдирд╛рдПрдВред

рдпрд╣рд╛рдВ рдПрдХ рдЕрдЪреНрдЫреА рд╕реВрдЪреА рд╣реИ, рдЬреЛ рдЗрд╡реЗрдВрдЯ рд╢реНрд░реЗрдгрд┐рдпреЛрдВ (рд▓реЙрдЧ рдЗрд╡реЗрдВрдЯ рд╢реНрд░реЗрдгрд┐рдпрд╛рдБ рджреЗрдЦреЗрдВ рдЕрдиреБрднрд╛рдЧ) рджреНрд╡рд╛рд░рд╛ рдмрдирд╛рдИ рдЧрдИ рд╣реИ, рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдкреНрд░реЛрдореЗрдерд┐рдпрд╕ рдореЗрдВ рдирд┐рдпрдо рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред

grok_exporter


рдореАрдЯреНрд░рд┐рдХ рдирд┐рд░реНрдпрд╛рддрдХ grok_exporter рдЖрдкрдХреЛ рд╕реНрд░реЛрдд рд╕реЗ рдЕрд╕рдВрд░рдЪрд┐рдд рдбреЗрдЯрд╛ рдХреЛ рдкрдврд╝рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ, рдЗрд╕реЗ рд╕рдВрд░рдЪрд┐рдд рдбреЗрдЯрд╛ рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрд┐рдд рдХрд░рддрд╛ рд╣реИ, рдирд┐рдпрдореЛрдВ рдХреЗ рдЕрдиреБрд╕рд╛рд░, рдФрд░ рдЗрд╕реЗ рдПрдХ рдкреНрд░рд╛рд░реВрдк рдореЗрдВ рдореИрдЯреНрд░рд┐рдХреНрд╕ рдХреЗ рд░реВрдк рдореЗрдВ рд╡рд╛рдкрд╕ рдХрд░рддрд╛ рд╣реИ рдЬрд┐рд╕реЗ рдкреНрд░реЛрдореЗрдерд┐рдпрд╕ рд╕рдордЭрддрд╛ рд╣реИред

рдирд┐рд░реНрдпрд╛рддрдХ рдПрдХ рдкреНрд▓рдЧ-рдЗрди рдИрдПрд▓рдХреЗ рдкреНрд▓рдЧрдЗрдиреНрд╕-рдлрд┐рд▓реНрдЯрд░-рдЧреНрд░реЙрдХ рдХреА рдЫрд╡рд┐ рдореЗрдВ рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рдерд╛ , рдЬреЛ рдЖрдкрдХреЛ рдкреНрд▓рдЧрдЗрдиреНрд╕-рдлрд┐рд▓реНрдЯрд░-рдЧреНрд░реЛ рдЯреЗрдореНрдкреНрд▓реЗрдЯ рдХреЗ рдПрдХ рд╕реЗрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ рдЬреИрд╕реЗ рд╡реЗ рд╣реИрдВред

рд╕реНрдерд╛рдкрдирд╛


рд╕реНрдерд╛рдкрдирд╛ рд╕рд░рд▓ рдФрд░ рд╕рд░рд▓ рд╣реИред рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдмрд╕ рд▓рд┐рдВрдХ рдХрд╛ рдЕрдиреБрд╕рд░рдг рдХрд░реЗрдВ рдФрд░ рдЖрдкрдХреЗ рджреНрд╡рд╛рд░рд╛ рдкрд╕рдВрдж рдХрд┐рдП рдЧрдП рд╕рдВрд╕реНрдХрд░рдг рдХреЛ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░реЗрдВ (рдФрд░ рд╣рд╛рдБ рд╡реЗ рд╕рднреА рдкреВрд░реНрд╡-рд░рд┐рд▓реАрдЬрд╝ рд╣реИрдВ, рдФрд░ рдирд╡реАрдирддрдо рд╕рдВрд╕реНрдХрд░рдг рдЕрднреА рднреА рд░рд┐рд▓реАрдЬрд╝ рдЙрдореНрдореАрджрд╡рд╛рд░ рдЪрд░рдг рдореЗрдВ рд╣реИрдВ) рдФрд░ рдкрд░рд┐рдгрд╛рдореА рд╕рдВрдЧреНрд░рд╣ рдХреЛ рдЕрдирдЬрд╝рд┐рдк рдХрд░реЗрдВред

рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк, рд╣рдореЗрдВ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд╕реЗрдЯ рдорд┐рд▓рддреЗ рд╣реИрдВ:

grok_exporter-1.0.0.RC3.linux-amd64
тФЬтФАтФА patterns
тФВ   тФЬтФАтФА ruby
тФВ   тФЬтФАтФА redis
тФВ   тФЬтФАтФА rails
тФВ   тФЬтФАтФА postgresql
тФВ   тФЬтФАтФА nagios
тФВ   тФЬтФАтФА mongodb
тФВ   тФЬтФАтФА mcollective-patterns
тФВ   тФЬтФАтФА mcollective
тФВ   тФЬтФАтФА linux-syslog
тФВ   тФЬтФАтФА junos
тФВ   тФЬтФАтФА java
тФВ   тФЬтФАтФА haproxy
тФВ   тФЬтФАтФА grok-patterns
тФВ   тФЬтФАтФА firewalls
тФВ   тФЬтФАтФА exim
тФВ   тФЬтФАтФА bro
тФВ   тФЬтФАтФА bacula
тФВ   тФФтФАтФА aws
тФЬтФАтФА grok_exporter
тФФтФАтФА example
    тФЬтФАтФА exim-rejected-RCPT-examples.log
    тФЬтФАтФА config.yml
    тФФтФАтФА config_logstash_http_input_ipv6.yml

рдХрд╣рд╛рдБ рдкреЗ:

  • grok_exporter - рдирд┐рд░реНрдпрд╛рддрдХ рдирд┐рд╖реНрдкрд╛рджрди рдпреЛрдЧреНрдп
  • рдкреИрдЯрд░реНрди - рдкреИрдЯрд░реНрди рдХрд╛ рдПрдХ рд╕реЗрдЯ рд╣реЛрддрд╛ рд╣реИ
  • рдЙрджрд╛рд╣рд░рдг - рдПрдХ рдкрд░реАрдХреНрд╖рдг рдбреЗрдЯрд╛ рд╕реЗрдЯ рдФрд░ рдПрдХ рдЙрджрд╛рд╣рд░рдг рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдлрд╝рд╛рдЗрд▓ рд╢рд╛рдорд┐рд▓ рд╣реИ

рдирд┐рд░реНрдпрд╛рддрдХ рдХреЛ рд╢реБрд░реВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдмрд╕ рдирд┐рд╖реНрдкрд╛рджрди рдпреЛрдЧреНрдп рдлрд╝рд╛рдЗрд▓ рдЪрд▓рд╛рдПрдВред Config.yml рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдлрд╝рд╛рдЗрд▓ рдЙрд╕ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдореЗрдВ рдЦреЛрдЬреА рдЬрд╛рддреА рд╣реИ рдЬрд╣рд╛рдБ рд╕реЗ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рд▓реЙрдиреНрдЪ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ рдпрд╛ рдЗрд╕рдХрд╛ рд╕реНрдерд╛рди -config рд╡рд┐рдХрд▓реНрдк рджреНрд╡рд╛рд░рд╛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ



рдХрд╛рдо рдХреЗ рд▓рд┐рдП рд╕реЗрдЯрдЕрдк рдФрд░ рддреИрдпрд╛рд░реА


PostgreSQL


, PostgreSQL. :


  1. grok_exporter . , pg_reload_conf.

    • alter system set log_directory to '/var/log/postgresql'; 
    • alter system set log_file_mode to '0644';
  2. log_line_prefix, . , . :

     alter system set log_line_prefix to '%t datname:%d,client:%h,app:%a,usename:%u,session:%c ';

grok_exporter


рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рд╣рдо рдЕрдкрдиреА рд▓реЙрдЧ рдлрд╝рд╛рдЗрд▓ рдХреЗ рдкреНрд░рд╛рд░реВрдк рдХреЗ рдЕрдиреБрд╕рд╛рд░ рдкреИрдЯрд░реНрди / рдкреЛрд╕реНрдЯрдЧреНрд░реИрд╕реНрдХрд▓ рдЯреЗрдореНрдкрд▓реЗрдЯ рдХреЛ рд╕рдВрдкрд╛рджрд┐рдд рдХрд░реЗрдВрдЧреЗ рдФрд░ рд╕рд╣рд╛рдпрдХ рдирд┐рд░реНрдорд╛рдгреЛрдВ рдХреЛ рдЬреЛрдбрд╝реЗрдВрдЧреЗред рдореИрдВ рдПрдХ рдмрд╛рд░ рдлрд┐рд░ рдЗрд╕ рдмрд╛рдд рдкрд░ рдЬреЛрд░ рджреЗрддрд╛ рд╣реВрдВ рдХрд┐ рдЯреЗрдореНрдкреНрд▓реЗрдЯ рдХрд╛ рд╕рд┐рдВрдЯреИрдХреНрд╕ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╕рдВрдЧрдд рд╣реИ рдЬреЛ рдХрд┐ рдкреНрд▓рдЧ-рдлрд┐рд▓реНрдЯрд░-рдЧреНрд░реЙрдХ рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ , рдЗрд╕рд▓рд┐рдП, рд╕рд┐рдВрдЯреИрдХреНрд╕ рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рд╕рднреА рдореБрджреНрджреЛрдВ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рдЗрд╕рдХреЗ рдкреНрд░рд▓реЗрдЦрди рдкрд░ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред рддреЛ, рдЪрд▓рд┐рдП PostgreSQL рдХреЗ рд▓рд┐рдП рд╣рдорд╛рд░реЗ рдЯреЗрдореНрдкреНрд▓реЗрдЯ рдХреЛ рдлреЙрд░реНрдо рдореЗрдВ рд▓рд╛рддреЗ рд╣реИрдВ ( рдкреИрдЯрд░реНрди / рдЧреНрд░реЙрдХ-рдкреИрдЯрд░реНрди рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдмреЗрд╕рд┐рдХ рдЯреЗрдореНрдкрд▓реЗрдЯ рдХрд╛ рдПрдХ рдмрдбрд╝рд╛ рд╕реЗрдЯ рд╢рд╛рдорд┐рд▓ рд╣реИ:

#     - postgresql
PG_TIMESTAMP %{YEAR}-%{MONTHNUM}-%{MONTHDAY} %{HOUR}:%{MINUTE}:%{SECOND} [A-Z]{3,4}

#    
PG_ERROR_PATTERN (ERROR|WARNING|FATAL|PANIC)

# log_line_prefix   - PostgreSQL
PG_PREFIX %{PG_TIMESTAMP} datname:(%{DATA:datname})?,client:(%{DATA:client_host})?,app:(%{DATA:app_name})?,usename:(%{USER:usename})?,session:(%{DATA:session})?

#    log_level     
PG_ERROR_LEVEL %{PG_ERROR_PATTERN:log_level}:

#    
PG_EVENT_AUTH LOG:  connection authorized:

#      SIGHUP,   
PG_EVENT_RELOAD LOG:  received SIGHUP, reloading configuration files

рдбрд┐рдЬрд╝рд╛рдЗрди ()?рдЖрдкрдХреЛ рдпрд╣ рдЗрдВрдЧрд┐рдд рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ рдХрд┐ рдореВрд▓реНрдп рд╡реИрдХрд▓реНрдкрд┐рдХ рд╣реИред


рдпрд╣рд╛рдВ, рдкрд░реНрдпрд╛рдкреНрдд рд╡рд┐рд╡рд░рдг рдореЗрдВ, рдЙрджрд╛рд╣рд░рдгреЛрдВ рдХреЗ рд╕рд╛рде, рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдлрд╝рд╛рдЗрд▓ рдмрдирд╛рдиреЗ рдХреА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХрд╛ рд╡рд░реНрдгрди рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рдиреАрдЪреЗ, рдХреЗрд╡рд▓ рд╡рд╣реА рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ рдЬреЛ рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред


рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдлрд╝рд╛рдЗрд▓ рдХрд╛ рд╕рдВрдХреНрд╖рд┐рдкреНрдд рд╡рд┐рд╡рд░рдг (рдкреНрд░рд▓реЗрдЦрди рд╕реЗ)
YAML :

  1. global тАФ
    • config_version тАФ . grok_exporter, тЙе 1.0.0.RC3, 3
      retention_check_interval тАФ . , .

  2. input тАФ .

    • type тАФ . : file, stdin, webhook. , file;
    • path|paths тАФ c -(-). ;
    • readall тАФ , .
      true тАФ , . Prometheus .
      false тАФ , grok_exporter;
    • fail_on_missing_logfile тАФ -. true тАФ , ;
  3. imports тАФ , , . 2, , grok.

    • type тАФ grok_patterns () metrics ();
    • file|dir тАФ . , .

  4. grok_patterns тАФ , .
  5. metrics тАФ . тАФ counter, gauge, histogram, or summary.
  6. server тАФ

      protocol: https
      host: localhost
      port: 9144
      path: /metrics
      cert: /path/to/cert
      key: /path/to/key
    



рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдлрд╝рд╛рдЗрд▓ рдХреЗ 3 рд╕рдВрд╕реНрдХрд░рдг рдХреЗ рд╕рд┐рдВрдЯреИрдХреНрд╕ рдореЗрдВ, рд╡реНрдпрдХреНрддрд┐рдЧрдд рдлрд╝рд╛рдЗрд▓реЛрдВ рд╕реЗ рдореИрдЯреНрд░рд┐рдХреНрд╕ рдЖрдпрд╛рдд рдХрд░рдирд╛ рд╕рдВрднрд╡ рд╣реЛ рдЧрдпрд╛, рдпрд╣ рдЖрдкрдХреЛ рдЙрджреНрджреЗрд╢реНрдп рд╕реЗ рд╕рдореВрд╣ рдореИрдЯреНрд░рд┐рдХреНрд╕ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрдЧрд╛ред

рдЕрдЧрд▓рд╛, рдЖрдзрд╛рд░ config.yml рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдлрд╝рд╛рдЗрд▓ рдмрдирд╛рдПрдБ ред рдЗрд╕рдореЗрдВ, рд╣рдо: рдорд╛рд╕реНрдХ рджреНрд╡рд╛рд░рд╛ рдкреЛрд╕реНрдЯрдЧреНрд░реЗрдХреНрдпреВрдПрд▓ рд▓реЙрдЧ рдлрд╛рдЗрд▓реЛрдВ рдХреЗ рд▓рд┐рдП рдкрде рд╕реЗрдЯ рдХрд░реЗрдВ; рдореЗрдЯреНрд░рд┐рдХреНрд╕. d рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рд╕реЗ рдкреИрдЯрд░реНрди рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдФрд░ рдореИрдЯреНрд░рд┐рдХреНрд╕ рд╕реЗ рдЖрдпрд╛рдд рдЯреЗрдореНрдкрд▓реЗрдЯреНрд╕ ; рд╣рдо рд╕рдВрдХреЗрдд рджреЗрддреЗ рд╣реИрдВ рдХрд┐ рдХрд┐рд╕ рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдФрд░ рдХрд┐рд╕ рдкреЛрд░реНрдЯ рдкрд░ рдореИрдЯреНрд░рд┐рдХреНрд╕ рдХреЗ рд▓рд┐рдП рдЖрд╡реЗрджрди рдХрд░рдирд╛ рдЖрд╡рд╢реНрдпрдХ рд╣реИред

config.yml
  config_version: 3
  retention_check_interval: 10s
input:
  type: file
  path: /var/log/postgresql/postgresql-*.log
  readall: false
imports:
- type: grok_patterns
  dir: ./patterns
- type: metrics
  dir: ./metrics.d
server:
  protocol: http
  port: 9144


, metrics.d postgresql.yml, .

, , .. ( retention, - 2 30 ) , . retention_check_interval.

, :

  • , ;
  • тАФ GAUGE COUNTER, . .. GAUGE, ;
  • рдпрджрд┐ рд╕рдВрдЪрдпреА рдХреЛ рд╕рд╣реА рдкрд░ рд╕реЗрдЯ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдПрдХ рд╣реА рд╕реЗрдЯ рдХреЗ рд╕рд╛рде рдореЗрдЯреНрд░рд┐рдХреНрд╕ рдХреЗ рдорд╛рди рд╕рдореНтАНрдорд┐рд▓рд┐рдд рд╣реЛрдВрдЧреЗ, рдЬреЛ рдЕрдкреЗрдХреНрд╖рд┐рдд рд╡реНрдпрд╡рд╣рд╛рд░ рд╣реИред рдПрдХ рдЕрдкреНрд░рддреНрдпрд╛рд╢рд┐рдд рд╕реНрдерд┐рддрд┐ рдЙрддреНрдкрдиреНрди рд╣реЛ рд╕рдХрддреА рд╣реИ, рдЬрдм рджреВрд╕рд░реЗ рдЕрдиреБрд░реЛрдз рдкрд░, рдЖрдк рдЕрдиреБрд░реЛрдз рдореЗрдВ рдорд╛рдиреЛрдВ рдХрд╛ рдпреЛрдЧ рдФрд░ рдкрд┐рдЫрд▓реЗ рдореВрд▓реНрдп рдкреНрд░рд╛рдкреНрдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
  • рдпрджрд┐ рд╕рдВрдЪрдпреА рдХреЛ рдЭреВрдард╛ рд╕реЗрдЯ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдпрджрд┐ рд▓реЗрдмрд▓ рдХреЗ рд╕рдорд╛рди рд╕реЗрдЯ рдХреЗ рд╕рд╛рде рдореИрдЯреНрд░рд┐рдХреНрд╕ рд╣реИрдВ, рддреЛ рдХреЗрд╡рд▓ рдЕрдВрддрд┐рдо рдорд╛рди рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛;

рдЗрд╕рдиреЗ рдмрд╣реБрдд рд╕реА рдЪрд┐рдЯреНрдард┐рдпреЛрдВ рдХреЛ рдЙрд▓рдЭрд╛рдпрд╛, рднреНрд░рд╛рдордХ рдФрд░ рдЕрдпреЛрдЧреНрдп рд╕реНрдерд╛рдиреЛрдВ рдореЗрдВ, рд▓реЗрдХрд┐рди рдореИрдВ рдиреАрдЪреЗ рджрд┐рдП рдЧрдП рдЙрджрд╛рд╣рд░рдгреЛрдВ рдореЗрдВ рдЗрд╕рдХрд╛ рдЦреБрд▓рд╛рд╕рд╛ рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░реВрдВрдЧрд╛ред

рдФрд░ рдЗрд╕рд▓рд┐рдП, рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдПрдХ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдлрд╝рд╛рдЗрд▓ рд╣реИ рдЬреЛ рдЪрд╛рд░ рдореИрдЯреНрд░рд┐рдХреНрд╕, рддреАрди рдХрд╛рдЙрдВрдЯрд░ рдФрд░ рдПрдХ рдордирдорд╛рдирд╛ рдореВрд▓реНрдп рд╡рд╛рдкрд╕ рдХрд░ рд╕рдХрддреА рд╣реИред рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдкрд╣рд▓реЗ рддреАрди рд╕реНрд░реЛрдд рд╕реЗ рдкреНрд░рд╛рдкреНрдд рддрд╛рд░ рдХреЗ рд╕рд╛рде рдореИрдЪ рдЯреЗрдореНрдкрд▓реЗрдЯ рдХреНрд╖реЗрддреНрд░ рдХреЗ рдореИрдЪреЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░рддреЗ рд╣реИрдВ, рдЪреМрдерд╛ - рдореВрд▓реНрдпреЛрдВ рдХрд╛ рдпреЛрдЧ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рддрд╛ рд╣реИред

postgresql.yaml
#  - 
- type:   counter
  name:   pg_grok_error_count
  help:   Count of line error
  match:  '%{PG_PREFIX} %{PG_ERROR_LEVEL}  %{GREEDYDATA:message}'
  labels:
    log_level:   '{{.log_level}}'
    usename:     '{{.usename}}'
    datname:     '{{.datname}}'
    app_name:    '{{.app_name}}'
    client_host: '{{.client_host}}'
    message:     '{{.message}}'

#   
- type:   counter
  name:   pg_grok_auth_succes_count
  help:   Count of connections authorized
  match:  '%{PG_PREFIX} %{PG_EVENT_AUTH}'
  labels:
    usename:     '{{.usename}}'
    datname:     '{{.datname}}'
    app_name:    '{{.app_name}}'
    client_host: '{{.client_host}}'

#   
- type:   counter
  name:   pg_grok_reload_conf_count
  help:   Count of call pg_reload_conf
  match:  '%{PG_PREFIX} %{PG_EVENT_RELOAD}'
  labels:
    session:     '{{.session}}'

#   
- type:       gauge
  name:       pg_grok_tpm_file_size_bytes
  help:       Size of tmp file created by time
  match:      '%{PG_PREFIX} %{PG_EVENT_TMP_FILE}'
  value:      '{{.size}}'
  cumulative: true
  retention:  5s
  labels:
    static:     'temp_file'


рдЕрднреНрдпрд╛рд╕


pg_grok_error_count


рдореАрдЯреНрд░рд┐рдХ рдкреИрдЯрд░реНрди рдХреЗ рдЕрдиреБрд╕рд╛рд░ рдИрдЖрд░рдУрдЖрд░рдУрдЖрд░, рд╡рд╛рд░реНрдирд┐рдВрдЧ, рдлреЗрдЯрд▓ рдФрд░ рдкреИрдирдЖрдИрд╕реА рдХреА рдШрдЯрдирд╛рдУрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рдХреЛ рдЧрд┐рдирд╛рддрд╛ рд╣реИред рдпрд╣ рдЖрдкрд╛рддрдХрд╛рд▓ рдХреЗ рдорд╛рдорд▓реЗ рдореЗрдВ рдирд┐рдЧрд░рд╛рдиреА рдФрд░ рдЪреЗрддрд╛рд╡рдиреА рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧреА рд╣реЛ рд╕рдХрддрд╛ рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЖрдк рдирд┐рдореНрди рдорд╛рдорд▓реЛрдВ рдореЗрдВ рдЕрд▓рд░реНрдЯ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ: рдЕрд╕рдлрд▓ рдкреНрд░рд╛рдзрд┐рдХрд░рдг рдХрд╛ рдкреНрд░рдпрд╛рд╕, рд╕рдордп рдХреА рдкреНрд░рддрд┐ рдпреВрдирд┐рдЯ рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХреА рд╕реАрдорд╛ рд╕реЗ рдЕрдзрд┐рдХ, рдпрд╛ рдЬрдм рдбреЗрдЯрд╛рдмреЗрд╕ рд╡рд┐рдлрд▓рддрд╛ рдХреЗ рдмрд╛рдж рдкреБрдирд░реНрдкреНрд░рд╛рдкреНрддрд┐ рд╕реНрдерд┐рддрд┐ рдореЗрдВ рд╣реЛрддрд╛ рд╣реИ, рдФрд░ рдмрд╣реБрдд рдЕрдзрд┐рдХ ( рд▓реЙрдЧ рдЗрд╡реЗрдВрдЯ рд╢реНрд░реЗрдгрд┐рдпрд╛рдБ )ред

рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рд╣рдо рдЕрд╕рдлрд▓ рдкреНрд░рд╛рдзрд┐рдХрд░рдг рдкреНрд░рдпрд╛рд╕реЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЕрд▓рд░реНрдЯ рд╕реЗрдЯ рдХрд░реЗрдВрдЧреЗред PostgreSQL рд▓реЙрдЧ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдЕрд╕рдлрд▓ рд▓реЙрдЧрд┐рди рдкреНрд░рдпрд╛рд╕ рдХрд╛ рдПрдХ рдЙрджрд╛рд╣рд░рдг рдЗрд╕ рдкреНрд░рдХрд╛рд░ рд╣реИ:

2020-04-20 23:34:53 AEST datname:test,client:127.0.0.1,app:[unknown],usename:test_user,session:5e9da4fd.733 FATAL:  password authentication failed for user "test_user"
2020-04-20 23:34:53 AEST datname:test,client:127.0.0.1,app:[unknown],usename:test_user,session:5e9da4fd.733 DETAIL:  Password does not match for user "test_user".
        Connection matched pg_hba.conf line 86: "host    all             all             127.0.0.1/32            md5"

Grok_exporter рдХреЗ рдЙрддреНрдкрд╛рджрди рдореЗрдВ, рд╡рд┐рдлрд▓ рд░рд╣реА рд╣реИ рдкреНрд░рдорд╛рдгреАрдХрд░рдг рдкреНрд░рдпрд╛рд╕ рд╕реЗ рдкрд╣рдЪрд╛рдирд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╕рдВрджреЗрд╢ рд▓реЗрдмрд▓ -рд╕реНрдЯреНрд░рд┐рдВрдЧ рдпреБрдХреНрдд рдкрд╛рд╕рд╡рд░реНрдб рдкреНрд░рдорд╛рдгрди рдХреЗ рд▓рд┐рдП ... рдореЗрдВ рд╡рд┐рдлрд▓ рд░рд╣рд╛ рд╣реИ :

pg_grok_error_count{app_name="[unknown]",client_host="127.0.0.1",datname="postgres",log_level="FATAL",message="password authentication failed for user "postgres"", usename="postgres"} 15
pg_grok_error_count{app_name="[unknown]",client_host="127.0.0.1",datname="test",log_level="FATAL",message="password authentication failed for user \"test_user\"",usename="test_user"} 5

рдкреНрд░рд╛рдкреНрдд рдбреЗрдЯрд╛ рдкреНрд░реЛрдореЗрдерд┐рдпрд╕ рдХреЗ рд▓рд┐рдП рдПрдХ рдирд┐рдпрдо рдмрдирд╛рдиреЗ рдореЗрдВ рдорджрдж рдХрд░реЗрдЧрд╛ред рд╕рдВрд╡реЗрджрдирд╢реАрд▓рддрд╛ рдХреЛ рдЕрдкрдиреА рд╡рд╛рд╕реНрддрд╡рд┐рдХрддрд╛рдУрдВ рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рд╕рдорд╛рдпреЛрдЬрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред

groups:
- name: AuthAlert
  rules:
  - alert: AuthFail
    expr: sum(rate(pg_grok_error_count{message=~"password authentication failed for user.*"}[1m])) by (instance) > 0.1
    for: 30s
    labels:
      severity: warning
    annotations:
      summary: Too many fail authorization for {{ $labels.instance }}

pg_grok_reload_conf_count


рдЗрд╕реА рддрд░рд╣, рдЖрдк pg_reload_conf рдХрдорд╛рдВрдб рдХреЗ рдирд┐рд╖реНрдкрд╛рджрди рдХреЛ рдЯреНрд░реИрдХ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдпрд╣ рд▓реЗрдмрд▓ рдХреА рд╕реВрдЪреА рдкрд░ рдзреНрдпрд╛рди рджреЗрдиреЗ рдпреЛрдЧреНрдп рд╣реИ, рдпрд╛ рдпреЛрдВ рдХрд╣реЗрдВ рдХрд┐ рдХреЗрд╡рд▓ рдПрдХ рд╕рддреНрд░ рд▓реЗрдмрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдпрд╣ рдЗрд╕ рддрдереНрдп рдХреЗ рдХрд╛рд░рдг рд╣реИ рдХрд┐ рдИрд╡реЗрдВрдЯ рдХреЛ рд╕рд░реНрд╡рд░ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЗ рд╣рд┐рд╕реНрд╕реЗ рдХреЗ рд░реВрдк рдореЗрдВ рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ, рди рдХрд┐ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рд╕рддреНрд░ред

PostgreSQL рд▓реЙрдЧ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ, рдпрд╣ рдИрд╡реЗрдВрдЯ рдЗрд╕ рддрд░рд╣ рджрд┐рдЦрддрд╛ рд╣реИ:

2020-04-21 01:20:26 AEST datname:,client:,app:,usename:,session:5e9d9371.564 LOG:  received SIGHUP, reloading configuration files

рдЙрдиред рдпрд╣ рджреЗрдЦрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдкрд┐рдЫрд▓реЗ рдЙрджрд╛рд╣рд░рдг рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЧрдП рд▓реЗрдмрд▓ рдЦрд╛рд▓реА рд╣реИрдВред рдЗрд╕ рд╕реНрдерд┐рддрд┐ рдореЗрдВ, рд╣рдо рдкрд╣рдЪрд╛рди рдХреЗ рд▓рд┐рдП рд╕рддреНрд░ рдкрд╣рдЪрд╛рдирдХрд░реНрддрд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВрдЧреЗ, рдФрд░ рдпрд╣ рддрдм рддрдХ рдирд╣реАрдВ рдмрджрд▓реЗрдЧрд╛ рдЬрдм рддрдХ рдХрд┐ PostgreSQL рдХрд╛ рдЙрджрд╛рд╣рд░рдг рдмрдВрдж рдпрд╛ рдлрд┐рд░ рд╕реЗ рд╢реБрд░реВ рдирд╣реАрдВ рд╣реЛ рдЬрд╛рддрд╛ред

рдЗрд╕реА рддрд░рд╣ рдХреА рд╕реНрдерд┐рддрд┐ рдЕрдиреНрдп рд╕рдорд╛рди рдорд╛рдорд▓реЛрдВ рдХреЗ рд▓рд┐рдП рд╣реЛрдЧреА, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдПрдХ рдЙрджрд╛рд╣рд░рдг рдХреЛ рд░реЛрдХрдирд╛:

2020-04-21 01:32:52 AEST datname:,client:,app:,usename:,session:5e9d9371.564 LOG:  received fast shutdown request
2020-04-21 01:32:53 AEST datname:,client:,app:,usename:,session:5e9d9371.564 LOG:  database system is shut down

Grok_exporter рдХреЗ рдЙрддреНрдкрд╛рджрди рдореЗрдВ, рд╣рдо рдкреНрд░рд╛рдкреНрдд рдХрд░рддреЗ рд╣реИрдВ:

# HELP pg_grok_reload_conf_count Count of call pg_reload_conf
# TYPE pg_grok_reload_conf_count counter
pg_grok_reload_conf_count{session="5e9d9371.564"} 5

рдЕрдзрд┐рд╕реВрдЪрдирд╛ рдХреЗ рд▓рд┐рдП рдирд┐рдпрдо, рдЗрд╕реЗ рд▓рд╛рдиреЗ рдХрд╛ рдХреЛрдИ рдорддрд▓рдм рдирд╣реАрдВ рд╣реИ, рдпрд╣ рдКрдкрд░ рдЪрд░реНрдЪрд╛ рдХреА рдЧрдИ рдХреЗ рд╕рдорд╛рди рд╣реЛрдЧрд╛ред

pg_grok_tpm_file_size_bytes


рддреБрд░рдВрдд рдПрдХ рдЖрд░рдХреНрд╖рдг рдХрд░реЗрдВ рдХрд┐ рдпрд╣ рдЙрджрд╛рд╣рд░рдг "рдПрдХ рдирд┐рд░реНрд╡рд╛рдд рдореЗрдВ рдЧреЛрд▓рд╛рдХрд╛рд░ рдШреЛрдбрд╝реЗ" рдХреА рд╢реНрд░реЗрдгреА рд╕реЗ рд╣реИ рдФрд░ рдпрд╣ рджрд┐рдЦрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐ рдЖрдк рдореЗрдЯреНрд░рд┐рдХреНрд╕ рдХреЗ рд╡реНрдпрд╡рд╣рд╛рд░ рдХреЛ рдХреИрд╕реЗ рдмрджрд▓ рд╕рдХрддреЗ рд╣реИрдВ, рдпрд╣ рдЕрдзрд┐рдХ рд╣рдж рддрдХ рджрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдЧреЗрдЬ рдореЗрдЯреНрд░рд┐рдХреНрд╕

рдХрд╛ рд╡реНрдпрд╡рд╣рд╛рд░ рдкреНрд░рддрд┐рдзрд╛рд░рдг рдФрд░ рд╕рдВрдЪрдпреА рдорд╛рдкрджрдВрдбреЛрдВ рдХреЛ рдмрджрд▓рдХрд░ рдкреНрд░рднрд╛рд╡рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ ред рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдПрдХ рдирд┐рдпрдорд┐рдд рдХрд╛рдЙрдВрдЯрд░ рдХреЗ рд╡рд┐рдкрд░реАрдд, рдЬреЛ рдореИрдЪ рдкреИрдЯрд░реНрди рд╕реЗ рдореЗрд▓ рдЦрд╛рддреА рд▓рд╛рдЗрдиреЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░рддрд╛ рд╣реИ, рдЧреЗрдЬ рдЖрдкрдХреЛ рд▓реЙрдЧ рдлрд╝рд╛рдЗрд▓ рд╕реЗ рдбреЗрдЯрд╛ рдкрд░ рдХрд╛рдо рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред рдпрд╣ рдкрддрд╛ рдЪрд▓рд╛ рд╣реИ рдХрд┐ рд╣рдо рдЗрд╕реЗ рдкреНрд░рд╛рдкреНрдд рдореВрд▓реНрдп рд╕реЗ рдмрдврд╝рд╛рдХрд░ рдпрд╛ рдШрдЯрд╛рдХрд░ рдЬрдорд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдпрд╛ рдЗрд╕реЗ рдордирдорд╛рдиреЗ рдврдВрдЧ рд╕реЗ рдмрджрд▓рддреЗ рдореВрд▓реНрдп рдХреЗ рд░реВрдк рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдЗрд╕ рдкреНрд░рдХрд╛рд░, рдкрд╣рд▓реЗ рдорд╛рдорд▓реЗ рдореЗрдВ, рд╣рдо рд╡реЗрддрди рд╡реГрджреНрдзрд┐ рдХреЗ рдкрд░рд┐рдорд╛рдг рдореЗрдВ рджрд┐рд▓рдЪрд╕реНрдкреА рд▓реЗрдВрдЧреЗ, рджреВрд╕рд░реЗ рдореЗрдВ - рдЕрдкрдиреЗ рдЖрдк рдореЗрдВ рдореВрд▓реНрдпред рдЖрдЗрдП рдХреБрдЫ рдЙрджрд╛рд╣рд░рдг рджреЗрдЦреЗрдВ:



  1. , (cumulative: true). , , . , retention_check_interval + retention <= scrape_interval тАФ Prometheus.

    - PostgreSQL :

    2020-04-21 02:51:15 AEST datname:,client:,app:,usename:,session:5e9dd2f3.1278 LOG:  temporary file: path "base/pgsql_tmp/pgsql_tmp4728.0", size 46931968
    2020-04-21 02:51:15 AEST datname:,client:,app:,usename:,session:5e9dd2f3.1279 LOG:  temporary file: path "base/pgsql_tmp/pgsql_tmp4729.0", size 46276608
    2020-04-21 02:51:15 AEST datname:postgres,client:[local],app:psql,usename:postgres,session:5e9dc0a8.112c LOG:  temporary file: path "base/pgsql_tmp/pgsql_tmp4396.14", size 47194112
    

    , :

    pg_grok_tpm_file_size_bytes{static="temp_file"} 1.40402688e+08
    

    .

    , :

    pg_grok_tpm_file_size_bytes{static="temp_file"} 1.1911168e+07
    

    : , .
  2. , , (retention) (cumulative: true)
    , - PostgreSQL :


    2020-04-21 03:03:40 AEST datname:,client:,app:,usename:,session:5e9dd5dc.12c6 LOG:  temporary file: path "base/pgsql_tmp/pgsql_tmp4806.0", size 46260224
    2020-04-21 03:03:40 AEST datname:,client:,app:,usename:,session:5e9dd5dc.12c5 LOG:  temporary file: path "base/pgsql_tmp/pgsql_tmp4805.0", size 46833664
    2020-04-21 03:03:40 AEST datname:postgres,client:[local],app:psql,usename:postgres,session:5e9dc0a8.112c LOG:  temporary file: path "base/pgsql_tmp/pgsql_tmp4396.15", size 47316992
    

    :

    pg_grok_tpm_file_size_bytes{static="temp_file"} 1.40402688e+08
    

    , . :

    2020-04-21 03:10:40 AEST datname:,client:,app:,usename:,session:5e9dd76e.1325 LOG:  temporary file: path "base/pgsql_tmp/pgsql_tmp4901.0", size 46776320
    2020-04-21 03:10:40 AEST datname:,client:,app:,usename:,session:5e9dd76e.1324 LOG:  temporary file: path "base/pgsql_tmp/pgsql_tmp4900.0", size 45768704
    2020-04-21 03:10:40 AEST datname:postgres,client:[local],app:psql,usename:postgres,session:5e9dc0a8.112c LOG:  temporary file: path "base/pgsql_tmp/pgsql_tmp4396.18", size 47841280
    

    :

    pg_grok_tpm_file_size_bytes{static="temp_file"} 2.80772608e+08
    

    , . , .
  3. , cumulative false , .

    :

    2020-04-21 03:41:04 AEST datname:,client:,app:,usename:,session:5e9ddea4.1393 LOG:  temporary file: path "base/pgsql_tmp/pgsql_tmp5011.0", size 11763712
    2020-04-21 03:41:04 AEST datname:,client:,app:,usename:,session:5e9ddea4.1392 LOG:  temporary file: path "base/pgsql_tmp/pgsql_tmp5010.0", size 11501568
    2020-04-21 03:41:04 AEST datname:postgres,client:[local],app:psql,usename:postgres,session:5e9dc0a8.112c LOG:  temporary file: path "base/pgsql_tmp/pgsql_tmp4396.19", size 11911168
    

    :

    # HELP pg_grok_tpm_file_size_bytes Size of tmp file created by time
    # TYPE pg_grok_tpm_file_size_bytes gauge
    pg_grok_tpm_file_size_bytes{static="temp_file"} 1.1911168e+07
    

    , . , .


рдирд┐рд╕реНрд╕рдВрджреЗрд╣ grok_exporter рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдХреА рдирд┐рдЧрд░рд╛рдиреА рдХреЗ рд▓рд┐рдП рд╕рд╣реА рдЙрдкрдХрд░рдг рд╣реИред рдпрд╣ рдЖрдкрдХреЛ рдореЙрдирд┐рдЯрд░рд┐рдВрдЧ рд╕рд┐рд╕реНрдЯрдо, рд╕реНрдерд╛рдиреЛрдВ рдФрд░ рдЕрддрд┐рд░рд┐рдХреНрдд (рдирд┐рдпрдВрддреНрд░рдг) рдореЗрдЯреНрд░рд┐рдХреНрд╕ рдХреЗ рд╕рд╛рде рдирд┐рдЧрд░рд╛рдиреА рдХреЛ рд╕рдореГрджреНрдз рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП "рдПрдХреНрд╕реЗрд╕ рдХрд░рдиреЗ рдореЗрдВ рдореБрд╢реНрдХрд┐рд▓" рджреЗрдЦрдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ, рдЬрдмрдХрд┐ рдХрд╛рдлреА рд╕рд░рд▓, рдХрд╛рд░реНрдпрд╛рддреНрдордХ рдФрд░ рд╣рд▓реНрдХреЗ рд░рд╣рддреЗ рд╣реИрдВред

рдЙрд╕реА рд╕рдордп, рдпрд╣ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЗ рд▓рд┐рдП рднреА рдЙрдкрдпреЛрдЧреА рд╣реЛрдЧрд╛, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдореЙрдирд┐рдЯрд░рд┐рдВрдЧ рд╕рд┐рд╕реНрдЯрдо рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдХрдо рд╕реЗ рдХрдо рдЕрдкреНрд░рддреНрдпрдХреНрд╖ рд░реВрдк рд╕реЗ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рд▓реЙрдЧ рдХреЛ рдПрдХреНрд╕реЗрд╕ рдХрд░рддрд╛ рд╣реИред рдЬрд╣рд╛рдВ рдЖрдк рд╡рд┐рднрд┐рдиреНрди рд╕реНрд░реЛрддреЛрдВ рд╕реЗ рдореИрдЯреНрд░рд┐рдХреНрд╕ рдХреЛ рд╕рд╣рд╕рдВрдмрдВрдзрд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

рдПрдХ рдФрд░ рд╕рдХрд╛рд░рд╛рддреНрдордХ рдмрд┐рдВрджреБ рдпрд╣ рд╣реИ рдХрд┐ рдкрд░рд┐рдпреЛрдЬрдирд╛ рд╡рд┐рдХрд╕рд┐рдд рд╣реЛ рд░рд╣реА рд╣реИ рдФрд░ рдирдИ рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд░рд╣реА рд╣реИред

рдмрджрд▓реЗ рдореЗрдВ, рдореБрдЭреЗ рдЙрдореНрдореАрдж рд╣реИ рдХрд┐ рдпрд╣ рд▓рдШреБ рдиреЛрдЯ рдЙрдкрдпреЛрдЧреА рд╣реЛрдЧрд╛, рдЬрд┐рд╕рдореЗрдВ рдкрд░рд┐рдпреЛрдЬрдирд╛ рднреА рд╢рд╛рдорд┐рд▓ рд╣реИред рдЕрдзрд┐рдХ рд╕рд┐рддрд╛рд░реЗ, рдЕрдзрд┐рдХ рдордЬрд╝реЗрджрд╛рд░ рдХрд╛рдо!

рд╕рднреА рдХреЛ рдзрдиреНрдпрд╡рд╛рдж!

Source: https://habr.com/ru/post/undefined/


All Articles