|
21 | 21 | #include "opentelemetry/sdk/configuration/otlp_grpc_log_record_exporter_configuration.h" |
22 | 22 | #include "opentelemetry/sdk/configuration/otlp_http_encoding.h" |
23 | 23 | #include "opentelemetry/sdk/configuration/otlp_http_log_record_exporter_configuration.h" |
| 24 | +#include "opentelemetry/sdk/configuration/severity_number.h" |
24 | 25 | #include "opentelemetry/sdk/configuration/simple_log_record_processor_configuration.h" |
25 | 26 | #include "opentelemetry/sdk/configuration/yaml_configuration_parser.h" |
26 | 27 |
|
@@ -590,3 +591,107 @@ file_format: "1.0-logs" |
590 | 591 | ASSERT_EQ(configurator->loggers[0].name, "noisy.library"); |
591 | 592 | ASSERT_EQ(configurator->loggers[0].config.enabled, false); |
592 | 593 | } |
| 594 | + |
| 595 | +TEST(YamlLogs, logger_config_with_minimum_severity) |
| 596 | +{ |
| 597 | + std::string yaml = R"YAML( |
| 598 | +file_format: "1.0-logs" |
| 599 | +logger_provider: |
| 600 | + processors: |
| 601 | + - simple: |
| 602 | + exporter: |
| 603 | + console: |
| 604 | + logger_configurator/development: |
| 605 | + default_config: |
| 606 | + enabled: true |
| 607 | + minimum_severity: warn |
| 608 | + trace_based: false |
| 609 | + loggers: |
| 610 | + - name: my.logger |
| 611 | + config: |
| 612 | + enabled: true |
| 613 | + minimum_severity: error |
| 614 | + trace_based: true |
| 615 | +)YAML"; |
| 616 | + |
| 617 | + auto config = DoParse(yaml); |
| 618 | + ASSERT_NE(config, nullptr); |
| 619 | + ASSERT_NE(config->logger_provider, nullptr); |
| 620 | + ASSERT_NE(config->logger_provider->logger_configurator, nullptr); |
| 621 | + |
| 622 | + auto &configurator = config->logger_provider->logger_configurator; |
| 623 | + ASSERT_EQ(configurator->default_config.enabled, true); |
| 624 | + ASSERT_EQ(configurator->default_config.minimum_severity, |
| 625 | + opentelemetry::sdk::configuration::SeverityNumber::warn); |
| 626 | + ASSERT_EQ(configurator->default_config.trace_based, false); |
| 627 | + ASSERT_EQ(configurator->loggers.size(), 1); |
| 628 | + |
| 629 | + ASSERT_EQ(configurator->loggers[0].name, "my.logger"); |
| 630 | + ASSERT_EQ(configurator->loggers[0].config.enabled, true); |
| 631 | + ASSERT_EQ(configurator->loggers[0].config.minimum_severity, |
| 632 | + opentelemetry::sdk::configuration::SeverityNumber::error); |
| 633 | + ASSERT_EQ(configurator->loggers[0].config.trace_based, true); |
| 634 | +} |
| 635 | + |
| 636 | +TEST(YamlLogs, logger_config_with_default_minimum_severity) |
| 637 | +{ |
| 638 | + std::string yaml = R"YAML( |
| 639 | +file_format: "1.0-logs" |
| 640 | +logger_provider: |
| 641 | + processors: |
| 642 | + - simple: |
| 643 | + exporter: |
| 644 | + console: |
| 645 | + logger_configurator/development: |
| 646 | + default_config: |
| 647 | + enabled: true |
| 648 | + loggers: |
| 649 | + - name: my.logger |
| 650 | + config: |
| 651 | + enabled: false |
| 652 | +)YAML"; |
| 653 | + |
| 654 | + auto config = DoParse(yaml); |
| 655 | + ASSERT_NE(config, nullptr); |
| 656 | + ASSERT_NE(config->logger_provider, nullptr); |
| 657 | + ASSERT_NE(config->logger_provider->logger_configurator, nullptr); |
| 658 | + |
| 659 | + auto &configurator = config->logger_provider->logger_configurator; |
| 660 | + ASSERT_EQ(configurator->default_config.enabled, true); |
| 661 | + ASSERT_EQ(configurator->default_config.minimum_severity, |
| 662 | + opentelemetry::sdk::configuration::SeverityNumber::trace); |
| 663 | + ASSERT_EQ(configurator->default_config.trace_based, false); |
| 664 | + |
| 665 | + ASSERT_EQ(configurator->loggers[0].config.enabled, false); |
| 666 | + ASSERT_EQ(configurator->loggers[0].config.minimum_severity, |
| 667 | + opentelemetry::sdk::configuration::SeverityNumber::trace); |
| 668 | + ASSERT_EQ(configurator->loggers[0].config.trace_based, false); |
| 669 | +} |
| 670 | + |
| 671 | +TEST(YamlLogs, logger_config_trace_based_true) |
| 672 | +{ |
| 673 | + std::string yaml = R"YAML( |
| 674 | +file_format: "1.0-logs" |
| 675 | +logger_provider: |
| 676 | + processors: |
| 677 | + - simple: |
| 678 | + exporter: |
| 679 | + console: |
| 680 | + logger_configurator/development: |
| 681 | + default_config: |
| 682 | + enabled: true |
| 683 | + minimum_severity: info |
| 684 | + trace_based: true |
| 685 | +)YAML"; |
| 686 | + |
| 687 | + auto config = DoParse(yaml); |
| 688 | + ASSERT_NE(config, nullptr); |
| 689 | + ASSERT_NE(config->logger_provider, nullptr); |
| 690 | + ASSERT_NE(config->logger_provider->logger_configurator, nullptr); |
| 691 | + |
| 692 | + auto &configurator = config->logger_provider->logger_configurator; |
| 693 | + ASSERT_EQ(configurator->default_config.enabled, true); |
| 694 | + ASSERT_EQ(configurator->default_config.minimum_severity, |
| 695 | + opentelemetry::sdk::configuration::SeverityNumber::info); |
| 696 | + ASSERT_EQ(configurator->default_config.trace_based, true); |
| 697 | +} |
0 commit comments