// Copyright (c) 2016-present, Facebook, Inc. All rights reserved. // This source code is licensed under both the GPLv2 (found in the // COPYING file in the root directory) and Apache 2.0 License // (found in the LICENSE.Apache file in the root directory). #pragma once #include #include #include "rocksdb/env.h" namespace rocksdb { // Prints logs to stderr for faster debugging class StderrLogger : public Logger { public: explicit StderrLogger(const InfoLogLevel log_level = InfoLogLevel::INFO_LEVEL) : Logger(log_level) {} // Brings overloaded Logv()s into scope so they're not hidden when we override // a subset of them. using Logger::Logv; virtual void Logv(const char* format, va_list ap) override { vfprintf(stderr, format, ap); fprintf(stderr, "\n"); } }; } // namespace rocksdb