| # Copyright 2018 The Fuchsia Authors. All rights reserved. |
| # Use of this source code is governed by a BSD-style license that can be |
| # found in the LICENSE file. |
| |
| import("//third_party/protobuf/proto_library.gni") |
| import("$cobalt_root/metrics_registry.gni") |
| |
| metrics_registry("internal_metrics_config") { |
| customer_id = 2147483647 |
| project_name = "metrics" |
| namespace = "cobalt.logger" |
| |
| generate_binarypb = false |
| generate_cc = true |
| } |
| |
| source_set("status") { |
| sources = [ |
| "status.h", |
| ] |
| } |
| |
| source_set("event_record") { |
| sources = [ |
| "event_record.h", |
| ] |
| |
| public_configs = [ |
| "$cobalt_root:cobalt_config", |
| "$cobalt_root/src/registry:proto_config", |
| ] |
| |
| public_deps = [ |
| "$cobalt_root/src/pb", |
| "$cobalt_root/src/registry:cobalt_registry_proto", |
| ] |
| } |
| |
| source_set("project_context") { |
| sources = [ |
| "project_context.cc", |
| "project_context.h", |
| ] |
| |
| public_configs = [ |
| "$cobalt_root:cobalt_config", |
| "$cobalt_root/src/registry:proto_config", |
| ] |
| |
| public_deps = [ |
| ":status", |
| "$cobalt_root/src:logging", |
| "$cobalt_root/src/lib/statusor", |
| "$cobalt_root/src/registry:cobalt_registry_proto", |
| "$cobalt_root/src/registry:project_configs", |
| ] |
| } |
| |
| source_set("project_context_factory") { |
| sources = [ |
| "project_context_factory.cc", |
| "project_context_factory.h", |
| ] |
| |
| public_configs = [ |
| "$cobalt_root:cobalt_config", |
| "$cobalt_root/src/registry:proto_config", |
| ] |
| |
| deps = [ |
| "$cobalt_root/src/registry:cobalt_registry_proto", |
| |
| # This is for base64 decoding. |
| "$cobalt_root/src/lib/crypto_util", |
| ] |
| |
| public_deps = [ |
| ":project_context", |
| ] |
| } |
| |
| source_set("encoder") { |
| sources = [ |
| "encoder.cc", |
| "encoder.h", |
| ] |
| |
| public_configs = [ "$cobalt_root:cobalt_config" ] |
| |
| deps = [ |
| "$cobalt_root/src:tracing", |
| "$cobalt_root/src/algorithms/forculus:forculus_encrypter", |
| "$cobalt_root/src/algorithms/rappor:rappor_encoder", |
| ] |
| public_deps = [ |
| ":logger_interface", |
| ":status", |
| "$cobalt_root/src:logging", |
| "$cobalt_root/src/algorithms/rappor:rappor_config_helper", |
| "$cobalt_root/src/lib/crypto_util", |
| "$cobalt_root/src/logger:project_context", |
| "$cobalt_root/src/registry:buckets_config", |
| "$cobalt_root/src/registry:cobalt_registry_proto", |
| "$cobalt_root/src/registry:packed_event_codes", |
| "$cobalt_root/src/system_data:system_data", |
| "//third_party/abseil-cpp", |
| ] |
| } |
| |
| source_set("observation_writer") { |
| sources = [ |
| "observation_writer.cc", |
| "observation_writer.h", |
| ] |
| |
| public_configs = [ "$cobalt_root:cobalt_config" ] |
| |
| public_deps = [ |
| ":status", |
| "$cobalt_root/src:logging", |
| "$cobalt_root/src:tracing", |
| "$cobalt_root/src/lib/util:encrypted_message_util", |
| "$cobalt_root/src/observation_store", |
| "$cobalt_root/src/observation_store:observation_store_update_recipient", |
| "$cobalt_root/src/pb", |
| ] |
| } |
| |
| source_set("logger_interface") { |
| sources = [ |
| "logger_interface.h", |
| "types.h", |
| ] |
| |
| public_configs = [ "$cobalt_root:cobalt_config" ] |
| |
| public_deps = [ |
| ":status", |
| "$cobalt_root/src/pb", |
| "$cobalt_root/src/registry:cobalt_registry_proto", |
| "$cobalt_root/src/registry:packed_event_codes", |
| ] |
| } |
| |
| source_set("internal_metrics") { |
| sources = [ |
| "internal_metrics.cc", |
| "internal_metrics.h", |
| ] |
| |
| public_configs = [ "$cobalt_root:cobalt_config" ] |
| |
| public_deps = [ |
| ":internal_metrics_config_cc", |
| ":logger_interface", |
| "$cobalt_root/src:logging", |
| "//third_party/abseil-cpp", |
| ] |
| } |
| |
| source_set("event_loggers") { |
| visibility = [ |
| ":event_loggers_test", |
| ":logger", |
| ":undated_event_manager", |
| ] |
| |
| sources = [ |
| "event_loggers.cc", |
| "event_loggers.h", |
| ] |
| |
| public_configs = [ "$cobalt_root:cobalt_config" ] |
| |
| public_deps = [ |
| ":encoder", |
| ":event_record", |
| ":observation_writer", |
| ":status", |
| "$cobalt_root/src:tracing", |
| "$cobalt_root/src/local_aggregation:event_aggregator", |
| ] |
| } |
| |
| source_set("logger") { |
| sources = [ |
| "logger.cc", |
| "logger.h", |
| ] |
| |
| public_configs = [ "$cobalt_root:cobalt_config" ] |
| |
| public_deps = [ |
| ":encoder", |
| ":event_loggers", |
| ":event_record", |
| ":internal_metrics", |
| ":logger_interface", |
| ":observation_writer", |
| ":status", |
| ":undated_event_manager", |
| "$cobalt_root/src/lib/util:clock", |
| ] |
| } |
| |
| source_set("undated_event_manager") { |
| sources = [ |
| "undated_event_manager.cc", |
| "undated_event_manager.h", |
| ] |
| |
| public_configs = [ "$cobalt_root:cobalt_config" ] |
| |
| public_deps = [ |
| ":encoder", |
| ":event_loggers", |
| ":event_record", |
| ":internal_metrics", |
| ":logger_interface", |
| ":observation_writer", |
| ":status", |
| "$cobalt_root/src/lib/util:clock", |
| "$cobalt_root/src/local_aggregation:event_aggregator", |
| "//third_party/protobuf:protobuf_full", |
| ] |
| } |
| |
| source_set("testing_constants") { |
| testonly = true |
| |
| sources = [ |
| "testing_constants.h", |
| ] |
| |
| deps = [ |
| "$cobalt_root/src/logger:logger_test_utils", |
| ] |
| |
| public_deps = [ |
| "test_registries:all_report_types_test_registry", |
| "test_registries:mixed_time_zone_test_registry", |
| "test_registries:per_device_histogram_test_registry", |
| "test_registries:per_device_numeric_stats_test_registry", |
| "test_registries:unique_actives_noise_free_test_registry", |
| "test_registries:unique_actives_test_registry", |
| ] |
| |
| public_configs = [ "$cobalt_root:cobalt_config" ] |
| } |
| |
| source_set("fake_logger") { |
| testonly = true |
| sources = [ |
| "fake_logger.cc", |
| "fake_logger.h", |
| ] |
| deps = [ |
| ":project_context_factory", |
| "$cobalt_root/src/lib/util:consistent_proto_store", |
| "$cobalt_root/src/lib/util:posix_file_system", |
| "$cobalt_root/src/lib/util:status", |
| "$cobalt_root/src/local_aggregation:cobalt_local_aggregation_proto", |
| "$cobalt_root/src/logger:logger_interface", |
| "$cobalt_root/src/registry:project_configs", |
| "//third_party/googletest:gtest", |
| ] |
| public_configs = [ "$cobalt_root:cobalt_config" ] |
| } |
| |
| source_set("logger_test_utils") { |
| testonly = true |
| sources = [ |
| "logger_test_utils.cc", |
| "logger_test_utils.h", |
| ] |
| deps = [ |
| ":encoder", |
| ":fake_logger", |
| ":project_context_factory", |
| "$cobalt_root/src/lib/util:consistent_proto_store", |
| "$cobalt_root/src/lib/util:encrypted_message_util", |
| "$cobalt_root/src/lib/util:posix_file_system", |
| "$cobalt_root/src/local_aggregation:aggregation_utils", |
| "$cobalt_root/src/local_aggregation:cobalt_local_aggregation_proto", |
| "$cobalt_root/src/observation_store", |
| "$cobalt_root/src/observation_store:observation_store_update_recipient", |
| "$cobalt_root/src/registry:project_configs", |
| "$cobalt_root/src/system_data:client_secret", |
| "//third_party/googletest:gtest", |
| ] |
| public_configs = [ "$cobalt_root:cobalt_config" ] |
| } |
| |
| source_set("event_loggers_test") { |
| testonly = true |
| |
| sources = [ |
| "event_loggers_test.cc", |
| ] |
| |
| deps = [ |
| "$cobalt_root/src/system_data:client_secret", |
| ] |
| |
| public_deps = [ |
| ":event_loggers", |
| ":logger_test_utils", |
| ":testing_constants", |
| "//third_party/googletest:gtest", |
| "//third_party/protobuf:protobuf_lite", |
| ] |
| } |
| |
| source_set("logger_test") { |
| testonly = true |
| |
| sources = [ |
| "logger_test.cc", |
| ] |
| |
| deps = [ |
| "$cobalt_root/src/logger:fake_logger", |
| "$cobalt_root/src/system_data:client_secret", |
| ] |
| |
| public_deps = [ |
| ":logger", |
| ":logger_test_utils", |
| ":testing_constants", |
| "//third_party/googletest:gtest", |
| ] |
| } |
| |
| source_set("undated_event_manager_test") { |
| testonly = true |
| |
| sources = [ |
| "undated_event_manager_test.cc", |
| ] |
| |
| deps = [ |
| "$cobalt_root/src/logger:fake_logger", |
| "$cobalt_root/src/system_data:client_secret", |
| ] |
| |
| public_deps = [ |
| ":internal_metrics_config_cc", |
| ":logger_test_utils", |
| ":testing_constants", |
| ":undated_event_manager", |
| "//third_party/googletest:gtest", |
| ] |
| } |
| |
| source_set("encoder_test") { |
| testonly = true |
| sources = [ |
| "encoder_test.cc", |
| ] |
| deps = [ |
| "$cobalt_root/src/logger:project_context_factory", |
| ] |
| public_deps = [ |
| ":encoder", |
| "$cobalt_root/src/local_aggregation:aggregation_utils", |
| "test_registries:encoder_test_registry", |
| "//third_party/googletest:gtest", |
| "//third_party/protobuf:protobuf_lite", |
| ] |
| } |
| |
| source_set("project_context_test") { |
| testonly = true |
| sources = [ |
| "project_context_test.cc", |
| ] |
| public_deps = [ |
| ":project_context", |
| "$cobalt_root/src/lib/crypto_util", |
| "$cobalt_root/src/pb", |
| "test_registries:project_context_test_registry", |
| "//third_party/googletest:gtest", |
| ] |
| } |
| |
| source_set("project_context_factory_test") { |
| testonly = true |
| sources = [ |
| "project_context_factory_test.cc", |
| ] |
| public_deps = [ |
| ":project_context_factory", |
| "test_registries/project_context_factory_test_registry:a", |
| "test_registries/project_context_factory_test_registry:b", |
| "test_registries/project_context_factory_test_registry:c", |
| "//third_party/googletest:gtest", |
| ] |
| } |
| |
| source_set("internal_metrics_test") { |
| testonly = true |
| |
| sources = [ |
| "internal_metrics_test.cc", |
| ] |
| |
| deps = [ |
| ":fake_logger", |
| ] |
| |
| public_deps = [ |
| ":internal_metrics", |
| ":logger_test_utils", |
| "$cobalt_root/src/local_aggregation:cobalt_local_aggregation_proto", |
| "//third_party/abseil-cpp", |
| "//third_party/googletest:gtest", |
| "//third_party/grpc:grpc++", |
| "//third_party/tink/cc/util:status", |
| ] |
| } |
| |
| group("tests") { |
| testonly = true |
| |
| deps = [ |
| ":encoder_test", |
| ":event_loggers_test", |
| ":internal_metrics_test", |
| ":logger_test", |
| ":project_context_factory_test", |
| ":project_context_test", |
| ":undated_event_manager_test", |
| ] |
| } |