test/plugin/constants.rb in fluent-plugin-google-cloud-0.6.7.pre.1 vs test/plugin/constants.rb in fluent-plugin-google-cloud-0.6.7

- old
+ new

@@ -12,13 +12,11 @@ # See the License for the specific language governing permissions and # limitations under the License. # Constants used by unit tests for Google Cloud Logging plugin. module Constants - include Fluent::GoogleCloudOutput::ServiceConstants - include Fluent::GoogleCloudOutput::ConfigConstants - include Fluent::GoogleCloudOutput::InternalConstants + include Fluent::GoogleCloudOutput::Constants # Generic attributes. HOSTNAME = Socket.gethostname # TODO(qingling128) Separate constants into different submodules. @@ -26,14 +24,10 @@ PROJECT_ID = 'test-project-id' ZONE = 'us-central1-b' FULLY_QUALIFIED_ZONE = 'projects/' + PROJECT_ID + '/zones/' + ZONE VM_ID = '9876543210' - # Attributes used for the Metadata Agent resources. - METADATA_ZONE = 'us-central1-c' - METADATA_VM_ID = '0123456789' - # Attributes used for custom (overridden) configs. CUSTOM_PROJECT_ID = 'test-custom-project-id' CUSTOM_ZONE = 'us-custom-central1-b' CUSTOM_FULLY_QUALIFIED_ZONE = 'projects/' + PROJECT_ID + '/zones/' + ZONE CUSTOM_VM_ID = 'C9876543210' @@ -55,20 +49,10 @@ # Managed VMs specific labels. MANAGED_VM_BACKEND_NAME = 'default' MANAGED_VM_BACKEND_VERSION = 'guestbook2.0' - # Docker Container labels. - DOCKER_CONTAINER_ID = '0d0f03ff8d3c42688692536d1af77a28cd135c0a5c531f25a31' - DOCKER_CONTAINER_NAME = 'happy_hippo' - DOCKER_CONTAINER_STREAM_STDOUT = 'stdout' - DOCKER_CONTAINER_STREAM_STDERR = 'stderr' - # Timestamp for 1234567890 seconds and 987654321 nanoseconds since epoch. - DOCKER_CONTAINER_TIMESTAMP = '2009-02-13T23:31:30.987654321Z' - DOCKER_CONTAINER_SECONDS_EPOCH = 1_234_567_890 - DOCKER_CONTAINER_NANOS = 987_654_321 - # Container Engine / Kubernetes specific labels. CONTAINER_CLUSTER_NAME = 'cluster-1' CONTAINER_NAMESPACE_ID = '898268c8-4a36-11e5-9d81-42010af0194c' CONTAINER_NAMESPACE_NAME = 'kube-system' CONTAINER_POD_ID = 'cad3c3c4-4b9c-11e5-9d81-42010af0194c' @@ -163,24 +147,10 @@ PROMETHEUS_ENABLE_CONFIG = %( enable_monitoring true monitoring_type prometheus ) - ENABLE_METADATA_AGENT_CONFIG = %( - enable_metadata_agent true - ) - - DISABLE_METADATA_AGENT_CONFIG = %( - enable_metadata_agent false - ) - - DOCKER_CONTAINER_CONFIG = %( - enable_metadata_agent true - label_map { "source": "#{DOCKER_CONSTANTS[:service]}/stream" } - detect_json true - ) - CUSTOM_METADATA_CONFIG = %( project_id #{CUSTOM_PROJECT_ID} zone #{CUSTOM_ZONE} vm_id #{CUSTOM_VM_ID} vm_name #{CUSTOM_HOSTNAME} @@ -233,12 +203,10 @@ CONFIG_CUSTOM_TRACE_KEY_SPECIFIED = %( trace_key custom_trace_key ) # Service configurations for various services. - - # GCE. COMPUTE_PARAMS = { resource: { type: COMPUTE_CONSTANTS[:resource_type], labels: { 'instance_id' => VM_ID, @@ -249,20 +217,11 @@ project_id: PROJECT_ID, labels: { "#{COMPUTE_CONSTANTS[:service]}/resource_name" => HOSTNAME } } - COMPUTE_PARAMS_WITH_METADATA_VM_ID_AND_ZONE = COMPUTE_PARAMS.merge( - resource: COMPUTE_PARAMS[:resource].merge( - labels: { - 'instance_id' => METADATA_VM_ID, - 'zone' => METADATA_ZONE - } - ) - ) - # GAE. VMENGINE_PARAMS = { resource: { type: APPENGINE_CONSTANTS[:resource_type], labels: { 'module_id' => MANAGED_VM_BACKEND_NAME, @@ -276,17 +235,16 @@ "#{COMPUTE_CONSTANTS[:service]}/resource_name" => HOSTNAME, "#{COMPUTE_CONSTANTS[:service]}/zone" => ZONE } } - # GKE Container. CONTAINER_TAG = "kubernetes.#{CONTAINER_POD_NAME}_" \ "#{CONTAINER_NAMESPACE_NAME}_#{CONTAINER_CONTAINER_NAME}" CONTAINER_FROM_METADATA_PARAMS = { resource: { - type: GKE_CONSTANTS[:resource_type], + type: CONTAINER_CONSTANTS[:resource_type], labels: { 'cluster_name' => CONTAINER_CLUSTER_NAME, 'namespace_id' => CONTAINER_NAMESPACE_ID, 'instance_id' => VM_ID, 'pod_id' => CONTAINER_POD_ID, @@ -295,24 +253,24 @@ } }, log_name: CONTAINER_CONTAINER_NAME, project_id: PROJECT_ID, labels: { - "#{GKE_CONSTANTS[:service]}/namespace_name" => + "#{CONTAINER_CONSTANTS[:service]}/namespace_name" => CONTAINER_NAMESPACE_NAME, - "#{GKE_CONSTANTS[:service]}/pod_name" => CONTAINER_POD_NAME, - "#{GKE_CONSTANTS[:service]}/stream" => CONTAINER_STREAM, + "#{CONTAINER_CONSTANTS[:service]}/pod_name" => CONTAINER_POD_NAME, + "#{CONTAINER_CONSTANTS[:service]}/stream" => CONTAINER_STREAM, "label/#{CONTAINER_LABEL_KEY}" => CONTAINER_LABEL_VALUE, "#{COMPUTE_CONSTANTS[:service]}/resource_name" => HOSTNAME } } # Almost the same as from metadata, but namespace_id and pod_id come from # namespace and pod names. CONTAINER_FROM_TAG_PARAMS = { resource: { - type: GKE_CONSTANTS[:resource_type], + type: CONTAINER_CONSTANTS[:resource_type], labels: { 'cluster_name' => CONTAINER_CLUSTER_NAME, 'namespace_id' => CONTAINER_NAMESPACE_NAME, 'instance_id' => VM_ID, 'pod_id' => CONTAINER_POD_NAME, @@ -321,62 +279,18 @@ } }, log_name: CONTAINER_CONTAINER_NAME, project_id: PROJECT_ID, labels: { - "#{GKE_CONSTANTS[:service]}/namespace_name" => + "#{CONTAINER_CONSTANTS[:service]}/namespace_name" => CONTAINER_NAMESPACE_NAME, - "#{GKE_CONSTANTS[:service]}/pod_name" => CONTAINER_POD_NAME, - "#{GKE_CONSTANTS[:service]}/stream" => CONTAINER_STREAM, + "#{CONTAINER_CONSTANTS[:service]}/pod_name" => CONTAINER_POD_NAME, + "#{CONTAINER_CONSTANTS[:service]}/stream" => CONTAINER_STREAM, "#{COMPUTE_CONSTANTS[:service]}/resource_name" => HOSTNAME } } - CONTAINER_FROM_APPLICATION_PARAMS = { - resource: { - type: GKE_CONSTANTS[:resource_type], - labels: { - 'cluster_name' => CONTAINER_CLUSTER_NAME, - 'namespace_id' => CONTAINER_NAMESPACE_ID, - 'instance_id' => VM_ID, - 'pod_id' => CONTAINER_POD_ID, - 'container_name' => CONTAINER_CONTAINER_NAME, - 'zone' => ZONE - } - }, - log_name: 'redis', - project_id: PROJECT_ID, - labels: { - "#{COMPUTE_CONSTANTS[:service]}/resource_name" => HOSTNAME - } - } - - # Docker Container. - DOCKER_CONTAINER_PARAMS = { - resource: { - type: DOCKER_CONSTANTS[:resource_type], - labels: { - 'container_id' => DOCKER_CONTAINER_ID, - 'location' => ZONE - } - }, - log_name: 'test', - project_id: PROJECT_ID, - labels: { - "#{DOCKER_CONSTANTS[:service]}/stream" => DOCKER_CONTAINER_STREAM_STDOUT - } - } - DOCKER_CONTAINER_PARAMS_WITH_STREAM_STDERR = DOCKER_CONTAINER_PARAMS.merge( - labels: DOCKER_CONTAINER_PARAMS[:labels].merge( - "#{DOCKER_CONSTANTS[:service]}/stream" => DOCKER_CONTAINER_STREAM_STDERR - ) - ) - DOCKER_CONTAINER_PARAMS_WITH_NO_STREAM = DOCKER_CONTAINER_PARAMS.merge( - labels: {} - ) - - # Cloud Functions. CLOUDFUNCTIONS_TAG = "kubernetes.#{CLOUDFUNCTIONS_POD_NAME}_" \ "#{CLOUDFUNCTIONS_NAMESPACE_NAME}_" \ "#{CLOUDFUNCTIONS_CONTAINER_NAME}" CLOUDFUNCTIONS_PARAMS = { @@ -389,12 +303,12 @@ }, log_name: 'cloud-functions', project_id: PROJECT_ID, labels: { 'execution_id' => CLOUDFUNCTIONS_EXECUTION_ID, - "#{GKE_CONSTANTS[:service]}/instance_id" => VM_ID, - "#{GKE_CONSTANTS[:service]}/cluster_name" => + "#{CONTAINER_CONSTANTS[:service]}/instance_id" => VM_ID, + "#{CONTAINER_CONSTANTS[:service]}/cluster_name" => CLOUDFUNCTIONS_CLUSTER_NAME, "#{COMPUTE_CONSTANTS[:service]}/resource_id" => VM_ID, "#{COMPUTE_CONSTANTS[:service]}/resource_name" => HOSTNAME, "#{COMPUTE_CONSTANTS[:service]}/zone" => ZONE } @@ -409,20 +323,19 @@ } }, log_name: 'cloud-functions', project_id: PROJECT_ID, labels: { - "#{GKE_CONSTANTS[:service]}/instance_id" => VM_ID, - "#{GKE_CONSTANTS[:service]}/cluster_name" => + "#{CONTAINER_CONSTANTS[:service]}/instance_id" => VM_ID, + "#{CONTAINER_CONSTANTS[:service]}/cluster_name" => CLOUDFUNCTIONS_CLUSTER_NAME, "#{COMPUTE_CONSTANTS[:service]}/resource_id" => VM_ID, "#{COMPUTE_CONSTANTS[:service]}/resource_name" => HOSTNAME, "#{COMPUTE_CONSTANTS[:service]}/zone" => ZONE } } - # Cloud Dataflow. DATAFLOW_PARAMS = { resource: { type: DATAFLOW_CONSTANTS[:resource_type], labels: { 'job_name' => DATAFLOW_JOB_NAME, @@ -438,11 +351,10 @@ "#{COMPUTE_CONSTANTS[:service]}/resource_name" => HOSTNAME, "#{COMPUTE_CONSTANTS[:service]}/zone" => ZONE } } - # Cloud Dataproc. DATAPROC_PARAMS = { resource: { type: DATAPROC_CONSTANTS[:resource_type], labels: { 'cluster_name' => DATAPROC_CLUSTER_NAME, @@ -457,11 +369,10 @@ "#{COMPUTE_CONSTANTS[:service]}/resource_id" => VM_ID, "#{COMPUTE_CONSTANTS[:service]}/zone" => ZONE } } - # Cloud ML. ML_PARAMS = { resource: { type: ML_CONSTANTS[:resource_type], labels: { 'job_id' => ML_JOB_ID, @@ -568,52 +479,6 @@ "#{[0x92].pack('C*')}" => '%20', # Empty string tag. '' => '_' } ALL_TAGS = VALID_TAGS.merge(INVALID_TAGS) - - # Stub value for Monitored resources from Metadata Agent. - # Map from the local_resource_id to the retrieved monitored resource. - MONITORED_RESOURCE_STUBS = { - # Implicit GCE instance. - IMPLICIT_LOCAL_RESOURCE_ID => - { - 'type' => COMPUTE_CONSTANTS[:resource_type], - 'labels' => { - 'zone' => METADATA_ZONE, - 'instance_id' => METADATA_VM_ID - } - }.to_json, - # Docker container stderr / stdout logs. - "container.#{DOCKER_CONTAINER_ID}" => - { - 'type' => DOCKER_CONSTANTS[:resource_type], - 'labels' => { - 'location' => ZONE, - 'container_id' => DOCKER_CONTAINER_ID - } - }.to_json, - # Docker container application logs. - "containerName.#{DOCKER_CONTAINER_NAME}" => - { - 'type' => DOCKER_CONSTANTS[:resource_type], - 'labels' => { - 'location' => ZONE, - 'container_id' => DOCKER_CONTAINER_ID - } - }.to_json, - # GKE container logs. - "gke_containerName.#{CONTAINER_NAMESPACE_ID}.#{CONTAINER_POD_NAME}." \ - "#{CONTAINER_CONTAINER_NAME}" => - { - 'type' => GKE_CONSTANTS[:resource_type], - 'labels' => { - 'cluster_name' => CONTAINER_CLUSTER_NAME, - 'container_name' => CONTAINER_CONTAINER_NAME, - 'instance_id' => VM_ID, - 'namespace_id' => CONTAINER_NAMESPACE_ID, - 'pod_id' => CONTAINER_POD_ID, - 'zone' => ZONE - } - }.to_json - } end