Оба — высокопроизводительные библиотеки структурированного логирования, но подходы разные. zerolog — zero allocation, логирует без аллокаций вообще, API через цепочку вызовов: log.Info().Str("key", "val").Msg("done"). zap имеет два API: быстрый SugaredLogger (удобный, но чуть медленнее) и Logger (типизированный, максимальная производительность). По бенчмаркам они примерно равны, zerolog чуть быстрее в синтетике. На практике выбор — дело вкуса и привычки команды.