![]()  | 
  
    MySQL 9.5.0
    
   Source Code Documentation 
   | 
 
#include <metadata_logger.h>
Classes | |
| struct | Options | 
Public Types | |
| using | LogLevel = mysql_harness::logging::LogLevel | 
  Public Types inherited from mrs::database::BufferedLogger | |
| using | LogRecord = mysql_harness::logging::Record | 
| using | LogRecordBuffer = std::queue< LogRecord > | 
Public Member Functions | |
| void | init (mysql_harness::logging::LogLevel log_level) | 
| void | deinit () | 
| void | on_metadata_available (const mrs::database::MrsSchemaVersion &schema_ver, mysqlrouter::MySQLSession *session) | 
| void | on_metadata_version_change (const mrs::database::MrsSchemaVersion &schema_ver) | 
| void | start (const mrs::Configuration *configuration, collector::MysqlCacheManager *cache) | 
| void | stop () | 
  Public Member Functions inherited from mrs::database::BufferedLogger | |
| void | log (const LogRecord &record) | 
| virtual | ~BufferedLogger () | 
Static Public Member Functions | |
| static MetadataLogger & | instance () | 
Protected Member Functions | |
| LogLevel | get_log_level () const | 
| size_t | get_buffer_size () const override | 
| std::chrono::seconds | get_flush_interval () const override | 
  Protected Member Functions inherited from mrs::database::BufferedLogger | |
| void | start_flush_thread () | 
| void | stop_flush_thread () | 
| void | flush_thread_run () | 
Private Member Functions | |
| MetadataLogger () | |
| bool | flush_records (LogRecordBuffer &records) override | 
| void | reconfigure (const Options &config) | 
| void | report_dropped_logs (mysqlrouter::MySQLSession *session) | 
| void | check_dynamic_config (mysqlrouter::MySQLSession *session) | 
| bool | check_metadata_version_supported (const mrs::database::MrsSchemaVersion &schema_ver) | 
| bool | is_enabled () const | 
Private Attributes | |
| LogLevel | static_log_level_ | 
| Options | logger_options_ | 
| std::shared_ptr< mysql_harness::logging::ExternalHandler > | handler_ | 
| collector::MysqlCacheManager * | cache_manager_ | 
| const mrs::Configuration * | configuration_ | 
| bool | initialized_ {false} | 
Additional Inherited Members | |
  Protected Attributes inherited from mrs::database::BufferedLogger | |
| LogRecordBuffer | buffered_records_ | 
| std::mutex | mtx_ | 
| std::condition_variable | buffer_not_full_cv_ | 
| std::condition_variable | flush_thread_cv_ | 
| std::thread | flush_thread_ | 
| bool | flush_thread_is_running_ {false} | 
| uint64_t | dropped_logs_ {0} | 
      
  | 
  private | 
      
  | 
  private | 
      
  | 
  private | 
| void mrs::database::MetadataLogger::deinit | ( | ) | 
      
  | 
  overrideprivatevirtual | 
Implements mrs::database::BufferedLogger.
      
  | 
  inlineoverrideprotectedvirtual | 
Implements mrs::database::BufferedLogger.
      
  | 
  inlineoverrideprotectedvirtual | 
Implements mrs::database::BufferedLogger.
      
  | 
  inlineprotected | 
| void mrs::database::MetadataLogger::init | ( | mysql_harness::logging::LogLevel | log_level | ) | 
      
  | 
  inlinestatic | 
      
  | 
  inlineprivate | 
| void mrs::database::MetadataLogger::on_metadata_available | ( | const mrs::database::MrsSchemaVersion & | schema_ver, | 
| mysqlrouter::MySQLSession * | session | ||
| ) | 
| void mrs::database::MetadataLogger::on_metadata_version_change | ( | const mrs::database::MrsSchemaVersion & | schema_ver | ) | 
      
  | 
  private | 
      
  | 
  private | 
| void mrs::database::MetadataLogger::start | ( | const mrs::Configuration * | configuration, | 
| collector::MysqlCacheManager * | cache | ||
| ) | 
| void mrs::database::MetadataLogger::stop | ( | ) | 
      
  | 
  private | 
      
  | 
  private | 
      
  | 
  private | 
      
  | 
  private | 
      
  | 
  private | 
      
  | 
  private |