test/plugin/constants.rb in fluent-plugin-google-cloud-0.7.4 vs test/plugin/constants.rb in fluent-plugin-google-cloud-0.7.5.pre.multiworkers

- old
+ new

@@ -154,10 +154,11 @@ # Timestamp for 1234567890 seconds and 987654321 nanoseconds since epoch. K8S_TIMESTAMP = '2009-02-13T23:31:30.987654321Z'.freeze K8S_SECONDS_EPOCH = 1_234_567_890 K8S_NANOS = 987_654_321 K8S_CONTAINER_LOCAL_RESOURCE_ID_PREFIX = 'k8s_container'.freeze + K8S_POD_LOCAL_RESOURCE_ID_PREFIX = 'k8s_pod'.freeze K8S_NODE_LOCAL_RESOURCE_ID_PREFIX = 'k8s_node'.freeze K8S_TAG = "var.log.containers.#{K8S_NAMESPACE_NAME}_#{K8S_POD_NAME}_" \ "#{K8S_CONTAINER_NAME}.log".freeze K8S_LOCAL_RESOURCE_ID = @@ -373,10 +374,14 @@ CONFIG_CUSTOM_INSERT_ID_KEY_SPECIFIED = %( insert_id_key custom_insert_id_key ).freeze + CONFIG_CUSTOM_LABELS_KEY_SPECIFIED = %( + labels_key custom_labels_key + ).freeze + CONFIG_CUSTOM_OPERATION_KEY_SPECIFIED = %( operation_key custom_operation_key ).freeze CONFIG_CUSTOM_SOURCE_LOCATION_KEY_SPECIFIED = %( @@ -389,10 +394,73 @@ CONFIG_CUSTOM_TRACE_KEY_SPECIFIED = %( trace_key custom_trace_key ).freeze + # For 'labels' config. + LABELS_FROM_LABELS_CONFIG = { + 'a_label_from_labels_config' => 'some_value', + 'another_label_from_labels_config' => 'some_value' + }.freeze + CONFIG_LABELS = %( + labels #{LABELS_FROM_LABELS_CONFIG.to_json} + ).freeze + + # For 'label_map' config. + LABEL_MAP_HASH = { + 'target_field_from_payload' => 'a_label_from_label_map_config', + 'another_target_field_from_payload' => 'another_label_from_label_map_config' + }.freeze + PAYLOAD_FOR_LABEL_MAP = { + 'target_field_from_payload' => 'a_value', + 'another_target_field_from_payload' => 'b_value' + }.freeze + LABELS_FROM_LABEL_MAP_CONFIG = { + 'a_label_from_label_map_config' => 'a_value', + 'another_label_from_label_map_config' => 'b_value' + }.freeze + CONFIG_LABEL_MAP = %( + label_map #{LABEL_MAP_HASH.to_json} + ).freeze + + CONFIG_LABLES_AND_LABLE_MAP = %( + #{CONFIG_LABELS} + #{CONFIG_LABEL_MAP} + ).freeze + + # For conflicting labels. + CONFLICTING_LABEL_NAME = 'conflicting_label_key'.freeze + CONFLICTING_LABEL_VALUE1 = 'conflicting_value_1'.freeze + CONFLICTING_LABEL_VALUE2 = 'conflicting_value_2'.freeze + CONFLICTING_LABEL_VALUE3 = 'conflicting_value_3'.freeze + LABELS_FROM_PAYLOAD_CONFLICTING = { + CONFLICTING_LABEL_NAME => CONFLICTING_LABEL_VALUE1 + }.freeze + LABELS_FROM_LABEL_MAP_CONFIG_CONFLICTING = { + CONFLICTING_LABEL_NAME => CONFLICTING_LABEL_VALUE2 + }.freeze + LABELS_FROM_LABELS_CONFIG_CONFLICTING = { + CONFLICTING_LABEL_NAME => CONFLICTING_LABEL_VALUE3 + }.freeze + + LABEL_MAP_HASH_CONFLICTING = { + 'target_field_from_payload' => CONFLICTING_LABEL_NAME + }.freeze + PAYLOAD_FOR_LABEL_MAP_CONFLICTING = { + 'target_field_from_payload' => CONFLICTING_LABEL_VALUE2 + }.freeze + CONFIG_LABEL_MAP_CONFLICTING = %( + label_map #{LABEL_MAP_HASH_CONFLICTING.to_json} + ).freeze + CONFIG_LABELS_CONFLICTING = %( + labels #{LABELS_FROM_LABELS_CONFIG_CONFLICTING.to_json} + ).freeze + CONFIG_LABLES_AND_LABLE_MAP_CONFLICTING = %( + #{CONFIG_LABELS_CONFLICTING} + #{CONFIG_LABEL_MAP_CONFLICTING} + ).freeze + # Service configurations for various services. # GCE. COMPUTE_PARAMS_NO_LOG_NAME = { resource: { @@ -541,10 +609,40 @@ # Used in k8s fallback tests. K8S_CONTAINER_PARAMS_FROM_FALLBACK = COMPUTE_PARAMS_NO_LOG_NAME.merge( log_name: CONTAINER_TAG ).freeze + # K8s Pod. + K8S_POD_PARAMS = { + resource: { + type: K8S_POD_CONSTANTS[:resource_type], + labels: { + 'namespace_name' => K8S_NAMESPACE_NAME, + 'pod_name' => K8S_POD_NAME, + 'cluster_name' => K8S_CLUSTER_NAME, + 'location' => K8S_LOCATION + } + }, + project_id: PROJECT_ID, + labels: {} + }.freeze + K8S_POD_PARAMS_FROM_LOCAL = K8S_POD_PARAMS.merge( + resource: K8S_POD_PARAMS[:resource].merge( + labels: K8S_POD_PARAMS[:resource][:labels].merge( + 'location' => K8S_LOCATION2 + ) + ) + ).freeze + K8S_POD_PARAMS_CUSTOM = K8S_POD_PARAMS.merge( + resource: K8S_POD_PARAMS[:resource].merge( + labels: K8S_POD_PARAMS[:resource][:labels].merge( + 'cluster_name' => CUSTOM_K8S_CLUSTER_NAME, + 'location' => CUSTOM_K8S_LOCATION + ) + ) + ).freeze + # K8s Node. K8S_NODE_PARAMS = { resource: { type: K8S_NODE_CONSTANTS[:resource_type], labels: { @@ -779,10 +877,22 @@ 'id' => 'op_id2', 'producer' => 'my/app2', 'last' => false }.freeze + LABELS_MESSAGE = { + 'component' => 'front-end', + 'source' => 'user', + 'app' => 'request-router' + }.freeze + + LABELS_MESSAGE2 = { + 'component' => 'front-end', + 'source' => 'system', + 'app' => 'request-router' + }.freeze + CUSTOM_LABELS_MESSAGE = { 'customKey' => 'value' }.freeze CONFLICTING_LABEL_KEY = "#{COMPUTE_CONSTANTS[:service]}/resource_name".freeze @@ -856,10 +966,22 @@ 'container_name' => K8S_CONTAINER_NAME, 'cluster_name' => K8S_CLUSTER_NAME, 'location' => K8S_LOCATION } }.to_json, + # K8s pod logs. + "#{K8S_POD_LOCAL_RESOURCE_ID_PREFIX}.#{K8S_NAMESPACE_NAME}" \ + ".#{K8S_POD_NAME}" => + { + 'type' => K8S_POD_CONSTANTS[:resource_type], + 'labels' => { + 'namespace_name' => K8S_NAMESPACE_NAME, + 'pod_name' => K8S_POD_NAME, + 'cluster_name' => K8S_CLUSTER_NAME, + 'location' => K8S_LOCATION + } + }.to_json, # K8s node logs. "#{K8S_NODE_LOCAL_RESOURCE_ID_PREFIX}.#{K8S_NODE_NAME}" => { 'type' => K8S_NODE_CONSTANTS[:resource_type], 'labels' => { @@ -978,9 +1100,10 @@ PRESERVED_KEYS_MAP = { 'time' => K8S_TIMESTAMP, 'severity' => CONTAINER_SEVERITY, DEFAULT_HTTP_REQUEST_KEY => HTTP_REQUEST_MESSAGE, DEFAULT_INSERT_ID_KEY => INSERT_ID, + DEFAULT_LABELS_KEY => LABELS_MESSAGE, DEFAULT_OPERATION_KEY => OPERATION_MESSAGE, DEFAULT_SOURCE_LOCATION_KEY => SOURCE_LOCATION_MESSAGE, DEFAULT_SPAN_ID_KEY => SPAN_ID, DEFAULT_TRACE_KEY => TRACE }.freeze