| # 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") |
| |
| visibility = [ "$cobalt_root/*" ] |
| |
| metrics_registry("internal_metrics_config") { |
| # This must match the IDs of our Cobalt project as specified in: |
| # third_party/cobalt_config/projects.yaml |
| customer_id = 2147483647 |
| project_id = 205836624 |
| namespace = "cobalt.logger" |
| features = [ "generate-config-base64" ] |
| dimension_name_maps_for_metric_ids = [ "15" ] |
| |
| generate_cc = true |
| } |
| |
| source_set("event_record") { |
| sources = [ "event_record.h" ] |
| |
| public_configs = [ |
| "$cobalt_root:cobalt_config", |
| "$cobalt_root/src/registry:proto_config", |
| ] |
| |
| deps = [ |
| "$cobalt_root/src/lib/util:status_builder", |
| "$cobalt_root/src/public/lib:registry_identifiers", |
| ] |
| public_deps = [ |
| ":project_context", |
| "$cobalt_root/src/lib/util:datetime_util", |
| "$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", |
| ] |
| |
| deps = [ |
| "$cobalt_root/src/lib/util:status_builder", |
| "$cobalt_root/src/public/lib:registry_identifiers", |
| ] |
| public_deps = [ |
| "$cobalt_root/src:logging", |
| "$cobalt_root/src/public/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/public/lib:registry_identifiers", |
| "$cobalt_root/src/registry:cobalt_registry_proto", |
| |
| # This is for base64 decoding. |
| "//third_party/abseil-cpp/absl/strings", |
| ] |
| |
| 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/rappor:rappor_encoder", |
| "$cobalt_root/src/lib/util:datetime_util", |
| "$cobalt_root/src/lib/util:status_builder", |
| "$cobalt_root/src/pb:metadata_builder", |
| ] |
| public_deps = [ |
| ":logger_interface", |
| ":project_context", |
| "$cobalt_root/src:logging", |
| "$cobalt_root/src/algorithms/rappor:rappor_config_helper", |
| "$cobalt_root/src/lib/client/cpp:buckets_config", |
| "$cobalt_root/src/pb:metadata_builder", |
| "$cobalt_root/src/public/lib:status", |
| "$cobalt_root/src/registry:cobalt_registry_proto", |
| "$cobalt_root/src/registry:packed_event_codes", |
| "$cobalt_root/src/system_data:client_secret", |
| "$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 = [ |
| "$cobalt_root/src:logging", |
| "$cobalt_root/src:tracing", |
| "$cobalt_root/src/lib/crypto_util", |
| "$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 = [ |
| ":internal_metrics_config_cc", |
| "$cobalt_root/src/pb", |
| "$cobalt_root/src/public/lib:status", |
| "$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", |
| "$cobalt_root/src/lib/util:protected_fields", |
| "$cobalt_root/src/public:diagnostics_interface", |
| "$cobalt_root/src/public/lib:registry_identifiers", |
| "//third_party/abseil-cpp", |
| ] |
| } |
| |
| source_set("event_loggers") { |
| visibility = [] |
| visibility = [ |
| ":event_loggers_test", |
| ":logger", |
| ":undated_event_manager", |
| ] |
| |
| sources = [ |
| "event_loggers.cc", |
| "event_loggers.h", |
| ] |
| |
| public_configs = [ "$cobalt_root:cobalt_config" ] |
| |
| deps = [ |
| "$cobalt_root/src/lib/util:status_builder", |
| "$cobalt_root/src/public/lib/statusor", |
| ] |
| |
| public_deps = [ |
| ":encoder", |
| ":event_record", |
| ":observation_writer", |
| "$cobalt_root/src:tracing", |
| "$cobalt_root/src/local_aggregation:event_aggregator", |
| "$cobalt_root/src/local_aggregation_1_1:local_aggregation", |
| "$cobalt_root/src/local_aggregation_1_1:proto", |
| "$cobalt_root/src/public/lib:status", |
| ] |
| } |
| |
| source_set("logger") { |
| sources = [ |
| "logger.cc", |
| "logger.h", |
| ] |
| |
| public_configs = [ "$cobalt_root:cobalt_config" ] |
| |
| public_deps = [ |
| ":encoder", |
| ":event_loggers", |
| ":event_record", |
| ":event_vector_index", |
| ":internal_metrics", |
| ":logger_interface", |
| ":observation_writer", |
| ":undated_event_manager", |
| "$cobalt_root/src/lib/util:clock", |
| "$cobalt_root/src/local_aggregation:event_aggregator", |
| "$cobalt_root/src/local_aggregation_1_1:local_aggregation", |
| ] |
| |
| visibility += [ "//src/cobalt/bin/app:lib" ] |
| } |
| |
| 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", |
| "$cobalt_root/src/lib/util:clock", |
| "$cobalt_root/src/local_aggregation:event_aggregator_mgr", |
| "//third_party/protobuf:protobuf_lite", |
| ] |
| } |
| |
| 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:cobalt1.1_migration_registry", |
| "test_registries:cobalt1.1_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/local_aggregation:cobalt_local_aggregation_proto", |
| "$cobalt_root/src/logger:logger_interface", |
| "$cobalt_root/src/public/lib:status", |
| "$cobalt_root/src/registry:project_configs", |
| "//third_party/googletest:gtest", |
| ] |
| public_configs = [ "$cobalt_root:cobalt_config" ] |
| visibility += [ "//src/cobalt/bin/app:cobalt_app_unittests" ] |
| } |
| |
| 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/algorithms/rappor:rappor_encoder", |
| "$cobalt_root/src/lib/crypto_util", |
| "$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/public/lib:status", |
| "$cobalt_root/src/registry:project_configs", |
| "$cobalt_root/src/system_data:client_secret", |
| "//third_party/googletest:gtest", |
| ] |
| public_configs = [ "$cobalt_root:cobalt_config" ] |
| visibility += [ "//src/cobalt/bin/app:cobalt_app_unittests" ] |
| } |
| |
| source_set("event_loggers_test") { |
| testonly = true |
| |
| sources = [ "event_loggers_test.cc" ] |
| |
| deps = [ |
| "$cobalt_root/src/local_aggregation/test_utils:test_event_aggregator_mgr", |
| "$cobalt_root/src/system_data:client_secret", |
| ] |
| |
| public_deps = [ |
| ":event_loggers", |
| ":logger_test_utils", |
| ":testing_constants", |
| "$cobalt_root/src/lib/util/testing:test_with_files", |
| "$cobalt_root/src/local_aggregation:event_aggregator_mgr", |
| "$cobalt_root/src/local_aggregation_1_1:local_aggregation", |
| "$cobalt_root/src/pb:metadata_builder", |
| "$cobalt_root/src/system_data:fake_system_data", |
| "//third_party/googletest:gtest", |
| "//third_party/protobuf:protobuf_lite", |
| ] |
| } |
| |
| source_set("logger_test") { |
| testonly = true |
| |
| sources = [ "logger_test.cc" ] |
| |
| deps = [ |
| "$cobalt_root/src/lib/util:hash", |
| "$cobalt_root/src/local_aggregation/test_utils:test_event_aggregator_mgr", |
| "$cobalt_root/src/logger:fake_logger", |
| "$cobalt_root/src/system_data:client_secret", |
| ] |
| |
| public_deps = [ |
| ":logger", |
| ":logger_test_utils", |
| ":testing_constants", |
| "$cobalt_root/src/lib/util/testing:test_with_files", |
| "$cobalt_root/src/local_aggregation:event_aggregator_mgr", |
| "$cobalt_root/src/pb:metadata_builder", |
| "$cobalt_root/src/system_data:fake_system_data", |
| "//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", |
| "$cobalt_root/src/system_data:fake_system_data", |
| ] |
| |
| public_deps = [ |
| ":internal_metrics_config_cc", |
| ":logger_test_utils", |
| ":testing_constants", |
| ":undated_event_manager", |
| "$cobalt_root/src/lib/util/testing:test_with_files", |
| "$cobalt_root/src/pb:metadata_builder", |
| "//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/lib/util/testing:test_with_files", |
| "$cobalt_root/src/local_aggregation:aggregation_utils", |
| "$cobalt_root/src/system_data:fake_system_data", |
| "test_registries:encoder_test_registry", |
| "//third_party/abseil-cpp/absl/strings", |
| "//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/pb", |
| "test_registries:empty_test_registry", |
| "test_registries:multiple_project_context_test_registry_directories", |
| "test_registries:project_context_test_registry", |
| "//third_party/abseil-cpp/absl/strings", |
| "//third_party/googletest:gtest", |
| ] |
| deps = [ "$cobalt_root/src/public/lib:registry_identifiers" ] |
| } |
| |
| source_set("project_context_factory_test") { |
| testonly = true |
| sources = [ "project_context_factory_test.cc" ] |
| public_deps = [ |
| ":project_context_factory", |
| "$cobalt_root/src/public/lib:registry_identifiers", |
| "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/abseil-cpp/absl/strings", |
| "//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", |
| "$cobalt_root/src/public/lib:registry_identifiers", |
| "//third_party/abseil-cpp", |
| "//third_party/googletest:gtest", |
| "//third_party/tink/cc/util:status", |
| ] |
| } |
| |
| source_set("event_vector_index") { |
| sources = [ |
| "event_vector_index.cc", |
| "event_vector_index.h", |
| ] |
| |
| public_deps = [ |
| "$cobalt_root/src/public/lib/statusor", |
| "$cobalt_root/src/registry:cobalt_registry_proto", |
| ] |
| } |
| |
| source_set("event_vector_index_test") { |
| testonly = true |
| |
| sources = [ "event_vector_index_test.cc" ] |
| public_deps = [ |
| ":event_vector_index", |
| "$cobalt_root/src/registry:cobalt_registry_proto", |
| "//third_party/googletest:gtest", |
| ] |
| } |
| |
| source_set("privacy_encoder") { |
| sources = [ |
| "privacy_encoder.cc", |
| "privacy_encoder.h", |
| ] |
| |
| public_deps = [ |
| ":event_vector_index", |
| "$cobalt_root/src/algorithms/privacy:count_min", |
| "$cobalt_root/src/algorithms/privacy:numeric_encoding", |
| "$cobalt_root/src/algorithms/privacy:poisson", |
| "$cobalt_root/src/algorithms/privacy:rappor", |
| "$cobalt_root/src/algorithms/random:random", |
| "$cobalt_root/src/lib/client/cpp:buckets_config", |
| "$cobalt_root/src/pb", |
| "$cobalt_root/src/public/lib/statusor", |
| "$cobalt_root/src/registry:cobalt_registry_proto", |
| ] |
| } |
| |
| source_set("privacy_encoder_test") { |
| testonly = true |
| |
| sources = [ "privacy_encoder_test.cc" ] |
| |
| deps = [ |
| ":privacy_encoder", |
| "$cobalt_root/src/algorithms/privacy:count_min", |
| "$cobalt_root/src/algorithms/random:test_secure_random", |
| "$cobalt_root/src/lib/util:hash", |
| "$cobalt_root/src/public/lib/statusor", |
| "$cobalt_root/src/registry:cobalt_registry_proto", |
| "//third_party/googletest:gtest", |
| ] |
| } |
| |
| group("tests") { |
| testonly = true |
| |
| deps = [ |
| ":encoder_test", |
| ":event_loggers_test", |
| ":event_vector_index_test", |
| ":internal_metrics_test", |
| ":logger_test", |
| ":privacy_encoder_test", |
| ":project_context_factory_test", |
| ":project_context_test", |
| ":undated_event_manager_test", |
| ] |
| } |