Назад | Перейти на главную страницу

Запретить Postgresql регистрировать уникальные ключевые ошибки, не влияя на регистрацию других ошибок

Есть ли способ запретить Postgresql регистрировать ОШИБКИ, вызванные попытками вставки, когда нарушено ограничение UNIQUE KEY?

Я мог бы изменить директиву server_log_min, но это отключило бы все сообщения ERROR, а не только сообщения для ограничения UNIQUE KEY.

Невозможно сделать это, просто настроив механизм ведения журнала на сервере. Вы можете сделать это, взломав исходный код, если вам абсолютно необходимо; соответствующий код находится в src / backend / access / nbtree / nbtinsert.c и выглядит примерно так, около строки 300:

ereport(ERROR,
    (errcode(ERRCODE_UNIQUE_VIOLATION),
        errmsg("duplicate key value violates unique constraint \"%s\"",
            RelationGetRelationName(rel))));

Вы можете изменить уровень журнала с ERROR на LOG или NOTICE.

Нет. Такого пути не существует. За исключением трубопроводов через | grep -v ... | фильтр.