def _create_process_mixer_instance(self, instance):
        """
        Grab the mixer scraper from the dict and return it if it exists,
        otherwise create the scraper and add it to the dict
        """
        endpoint = instance.get('mixer_endpoint')
        if endpoint is None:
            raise CheckException("Unable to find mixer_endpoint in config file.")

        process_mixer_instance = deepcopy(instance)
        process_mixer_instance.update(
            {
                'namespace': self.MIXER_NAMESPACE,
                'prometheus_url': endpoint,
                'metrics': [
                    {
                        'go_gc_duration_seconds': 'go.gc_duration_seconds',
                        'go_goroutines': 'go.goroutines',
                        'go_info': 'go.info',
                        'go_memstats_alloc_bytes': 'go.memstats.alloc_bytes',
                        'go_memstats_alloc_bytes_total': 'go.memstats.alloc_bytes_total',
                        'go_memstats_buck_hash_sys_bytes': 'go.memstats.buck_hash_sys_bytes',
                        'go_memstats_frees_total': 'go.memstats.frees_total',
                        'go_memstats_gc_cpu_fraction': 'go.memstats.gc_cpu_fraction',
                        'go_memstats_gc_sys_bytes': 'go.memstats.gc_sys_bytes',
                        'go_memstats_heap_alloc_bytes': 'go.memstats.heap_alloc_bytes',
                        'go_memstats_heap_idle_bytes': 'go.memstats.heap_idle_bytes',
                        'go_memstats_heap_inuse_bytes': 'go.memstats.heap_inuse_bytes',
                        'go_memstats_heap_objects': 'go.memstats.heap_objects',
                        'go_memstats_heap_released_bytes': 'go.memstats.heap_released_bytes',
                        'go_memstats_heap_sys_bytes': 'go.memstats.heap_sys_bytes',
                        'go_memstats_last_gc_time_seconds': 'go.memstats.last_gc_time_seconds',
                        'go_memstats_lookups_total': 'go.memstats.lookups_total',
                        'go_memstats_mallocs_total': 'go.memstats.mallocs_total',
                        'go_memstats_mcache_inuse_bytes': 'go.memstats.mcache_inuse_bytes',
                        'go_memstats_mcache_sys_bytes': 'go.memstats.mcache_sys_bytes',
                        'go_memstats_mspan_inuse_bytes': 'go.memstats.mspan_inuse_bytes',
                        'go_memstats_mspan_sys_bytes': 'go.memstats.mspan_sys_bytes',
                        'go_memstats_next_gc_bytes': 'go.memstats.next_gc_bytes',
                        'go_memstats_other_sys_bytes': 'go.memstats.other_sys_bytes',
                        'go_memstats_stack_inuse_bytes': 'go.memstats.stack_inuse_bytes',
                        'go_memstats_stack_sys_bytes': 'go.memstats.stack_sys_bytes',
                        'go_memstats_sys_bytes': 'go.memstats.sys_bytes',
                        'go_threads': 'go.threads',
                        'grpc_server_handled_total': 'grpc.server.handled_total',
                        'grpc_server_handling_seconds': 'grpc.server.handling_seconds',
                        'grpc_server_msg_received_total': 'grpc.server.msg_received_total',
                        'grpc_server_msg_sent_total': 'grpc.server.msg_sent_total',
                        'grpc_server_started_total': 'grpc.server.started_total',
                        'mixer_adapter_dispatch_count': 'adapter.dispatch_count',
                        'mixer_adapter_dispatch_duration': 'adapter.dispatch_duration',
                        'mixer_adapter_old_dispatch_count': 'adapter.old_dispatch_count',
                        'mixer_adapter_old_dispatch_duration': 'adapter.old_dispatch_duration',
                        'mixer_config_resolve_actions': 'config.resolve_actions',
                        'mixer_config_resolve_count': 'config.resolve_count',
                        'mixer_config_resolve_duration': 'config.resolve_duration',
                        'mixer_config_resolve_rules': 'config.resolve_rules',
                        'process_cpu_seconds_total': 'process.cpu_seconds_total',
                        'process_max_fds': 'process.max_fds',
                        'process_open_fds': 'process.open_fds',
                        'process_resident_memory_bytes': 'process.resident_memory_bytes',
                        'process_start_time_seconds': 'process.start_time_seconds',
                        'process_virtual_memory_bytes': 'process.virtual_memory_bytes',
                    }
                ],
                # Defaults that were set when istio was based on PrometheusCheck
                'send_monotonic_counter': instance.get('send_monotonic_counter', False),
                'health_service_check': instance.get('health_service_check', False),
            }
        )

        return process_mixer_instance
Grab the mixer scraper from the dict and return it if it exists,
        otherwise create the scraper and add it to the dict