question-circle Zabbix cleanup (odstranění starých dat)

  • Vaňková Lucie (lailoo)
  • Avatar uživatele Vaňková Lucie (lailoo) Autor tématu
  • Offline
  • Pokročilý
  • Pokročilý
Více
01. čen 2020 06:27 #494 od Vaňková Lucie (lailoo)
Zabbix cleanup (odstranění starých dat) vytvořil uživatel Vaňková Lucie (lailoo)
Ahoj, potřebovala bych odstranit data ze Zabbixu starší určitého data. Nechce se mi to, ale mazat přes GUI host po hostu.
Víte někdo, které tabulky se musí promazat.
Koneckonců je můžu vyčistit truncate úplně, když budu znát tabulky ve kterých jsou ty data ať nevymažu něco co nechci.

Dekuju.

Prosím Přihlásit se nebo Vytvořit účet připojte se ke konverzaci.

  • Lukáš Panáček (PankyWeby)
  • Avatar uživatele Lukáš Panáček (PankyWeby)
  • Offline
  • Administrator
  • Administrator
Více
01. čen 2020 06:34 - 01. čen 2020 07:03 #495 od Lukáš Panáček (PankyWeby)
Odpověděl Lukáš Panáček (PankyWeby) pro téma Zabbix cleanup (odstranění starých dat)
Dobrý den,

pokud potřebujete smazat data v závislosti na čase můžete použít toto (určitě by jste našla na Internetu), kdy je možno nastavit interval pro smazání hitorie a trendů:
SET @history_interval = 7;
SET @trends_interval = 90;

DELETE FROM alerts WHERE (UNIX_TIMESTAMP(NOW()) - clock) > (@history_interval * 24 * 60 * 60);
DELETE FROM acknowledges WHERE (UNIX_TIMESTAMP(NOW()) - clock) > (@history_interval * 24 * 60 * 60);
DELETE FROM events WHERE (UNIX_TIMESTAMP(NOW()) - clock) > (@history_interval * 24 * 60 * 60);

DELETE FROM history WHERE (UNIX_TIMESTAMP(NOW()) - clock) > (@history_interval * 24 * 60 * 60);
DELETE FROM history_uint WHERE (UNIX_TIMESTAMP(NOW()) - clock) > (@history_interval * 24 * 60 * 60);
DELETE FROM history_str WHERE (UNIX_TIMESTAMP(NOW()) - clock) > (@history_interval * 24 * 60 * 60);
DELETE FROM history_text WHERE (UNIX_TIMESTAMP(NOW()) - clock) > (@history_interval * 24 * 60 * 60);
DELETE FROM history_log WHERE (UNIX_TIMESTAMP(NOW()) - clock) > (@history_interval * 24 * 60 * 60);

DELETE FROM trends WHERE (UNIX_TIMESTAMP(NOW()) - clock) > (@trends_interval * 24 * 60 * 60);
DELETE FROM trends_uint WHERE (UNIX_TIMESTAMP(NOW()) - clock) > (@trends_interval * 24 * 60 * 60);
pokud chcete odstranit všechna data, tak pak použijete na ty stejné tabulky příkaz "TRUNCATE":
TRUNCATE TABLE history_uint;
TRUNCATE TABLE history;
TRUNCATE TABLE trends_uint;
TRUNCATE TABLE trends;
TRUNCATE TABLE events;
TRUNCATE TABLE alerts;
TRUNCATE TABLE acknowledges;
TRUNCATE TABLE history_str;
TRUNCATE TABLE history_text;
TRUNCATE TABLE history_log;
Poslední změna: 01. čen 2020 07:03 uživatelem Lukáš Panáček (PankyWeby).

Prosím Přihlásit se nebo Vytvořit účet připojte se ke konverzaci.

Přihlášení