@tf_export('debug_identity')
def debug_identity(input, device_name='', tensor_name='', debug_urls=[], gated_grpc=False, name=None):
    'Debug Identity Op.\n\n  Provides an identity mapping of the non-Ref type input tensor for debugging.\n\n  Args:\n    input: A `Tensor`. Input tensor, non-Reference type.\n    device_name: An optional `string`. Defaults to `""`.\n    tensor_name: An optional `string`. Defaults to `""`.\n      Name of the input tensor.\n    debug_urls: An optional list of `strings`. Defaults to `[]`.\n      List of URLs to debug targets, e.g.,\n      file:///foo/tfdbg_dump, grpc:://localhost:11011\n    gated_grpc: An optional `bool`. Defaults to `False`.\n      Whether this op will be gated. If any of the debug_urls of this\n      debug node is of the grpc:// scheme, when the value of this attribute is set\n      to True, the data will not actually be sent via the grpc stream unless this\n      debug op has been enabled at the debug_url. If all of the debug_urls of this\n      debug node are of the grpc:// scheme and the debug op is enabled at none of\n      them, the output will be an empty Tensor.\n    name: A name for the operation (optional).\n\n  Returns:\n    A `Tensor`. Has the same type as `input`.\n    Output tensor that equals the input tensor.\n  '
    _ctx = _context.context()
    if (not _ctx.executing_eagerly()):
        if (device_name is None):
            device_name = ''
        device_name = _execute.make_str(device_name, 'device_name')
        if (tensor_name is None):
            tensor_name = ''
        tensor_name = _execute.make_str(tensor_name, 'tensor_name')
        if (debug_urls is None):
            debug_urls = []
        if (not isinstance(debug_urls, (list, tuple))):
            raise TypeError(("Expected list for 'debug_urls' argument to 'debug_identity' Op, not %r." % debug_urls))
        debug_urls = [_execute.make_str(_s, 'debug_urls') for _s in debug_urls]
        if (gated_grpc is None):
            gated_grpc = False
        gated_grpc = _execute.make_bool(gated_grpc, 'gated_grpc')
        (_, _, _op) = _op_def_lib._apply_op_helper('DebugIdentity', input=input, device_name=device_name, tensor_name=tensor_name, debug_urls=debug_urls, gated_grpc=gated_grpc, name=name)
        _result = _op.outputs[:]
        _inputs_flat = _op.inputs
        _attrs = ('T', _op.get_attr('T'), 'device_name', _op.get_attr('device_name'), 'tensor_name', _op.get_attr('tensor_name'), 'debug_urls', _op.get_attr('debug_urls'), 'gated_grpc', _op.get_attr('gated_grpc'))
        _execute.record_gradient('DebugIdentity', _inputs_flat, _attrs, _result, name)
        (_result,) = _result
        return _result
    else:
        try:
            _result = _pywrap_tensorflow.TFE_Py_FastPathExecute(_ctx._handle, _ctx.device_name, 'DebugIdentity', name, _ctx._post_execution_callbacks, input, 'device_name', device_name, 'tensor_name', tensor_name, 'debug_urls', debug_urls, 'gated_grpc', gated_grpc)
            return _result
        except _core._FallbackException:
            return debug_identity_eager_fallback(input, device_name=device_name, tensor_name=tensor_name, debug_urls=debug_urls, gated_grpc=gated_grpc, name=name)
        except _core._NotOkStatusException as e:
            if (name is not None):
                message = ((e.message + ' name: ') + name)
            else:
                message = e.message
            _six.raise_from(_core._status_to_exception(e.code, message), None)
Debug Identity Op.

Provides an identity mapping of the non-Ref type input tensor for debugging.

Args:
  input: A `Tensor`. Input tensor, non-Reference type.
  device_name: An optional `string`. Defaults to `""`.
  tensor_name: An optional `string`. Defaults to `""`.
    Name of the input tensor.
  debug_urls: An optional list of `strings`. Defaults to `[]`.
    List of URLs to debug targets, e.g.,
    file:///foo/tfdbg_dump, grpc:://localhost:11011
  gated_grpc: An optional `bool`. Defaults to `False`.
    Whether this op will be gated. If any of the debug_urls of this
    debug node is of the grpc:// scheme, when the value of this attribute is set
    to True, the data will not actually be sent via the grpc stream unless this
    debug op has been enabled at the debug_url. If all of the debug_urls of this
    debug node are of the grpc:// scheme and the debug op is enabled at none of
    them, the output will be an empty Tensor.
  name: A name for the operation (optional).

Returns:
  A `Tensor`. Has the same type as `input`.
  Output tensor that equals the input tensor.
@tf_export('debug_identity')
def debug_identity(input, device_name=, tensor_name=, debug_urls=[], gated_grpc=False, name=None):
    'Debug Identity Op.\n\n  Provides an identity mapping of the non-Ref type input tensor for debugging.\n\n  Args:\n    input: A `Tensor`. Input tensor, non-Reference type.\n    device_name: An optional `string`. Defaults to ``.\n    tensor_name: An optional `string`. Defaults to ``.\n      Name of the input tensor.\n    debug_urls: An optional list of `strings`. Defaults to `[]`.\n      List of URLs to debug targets, e.g.,\n      file:///foo/tfdbg_dump, grpc:://localhost:11011\n    gated_grpc: An optional `bool`. Defaults to `False`.\n      Whether this op will be gated. If any of the debug_urls of this\n      debug node is of the grpc:// scheme, when the value of this attribute is set\n      to True, the data will not actually be sent via the grpc stream unless this\n      debug op has been enabled at the debug_url. If all of the debug_urls of this\n      debug node are of the grpc:// scheme and the debug op is enabled at none of\n      them, the output will be an empty Tensor.\n    name: A name for the operation (optional).\n\n  Returns:\n    A `Tensor`. Has the same type as `input`.\n    Output tensor that equals the input tensor.\n  '
    _ctx = _context.context()
    if (not _ctx.executing_eagerly()):
        if (device_name is None):
            device_name = 
        device_name = _execute.make_str(device_name, 'device_name')
        if (tensor_name is None):
            tensor_name = 
        tensor_name = _execute.make_str(tensor_name, 'tensor_name')
        if (debug_urls is None):
            debug_urls = []
        if (not isinstance(debug_urls, (list, tuple))):
            raise TypeError(("Expected list for 'debug_urls' argument to 'debug_identity' Op, not %r." % debug_urls))
        debug_urls = [_execute.make_str(_s, 'debug_urls') for _s in debug_urls]
        if (gated_grpc is None):
            gated_grpc = False
        gated_grpc = _execute.make_bool(gated_grpc, 'gated_grpc')
        (_, _, _op) = _op_def_lib._apply_op_helper('DebugIdentity', input=input, device_name=device_name, tensor_name=tensor_name, debug_urls=debug_urls, gated_grpc=gated_grpc, name=name)
        _result = _op.outputs[:]
        _inputs_flat = _op.inputs
        _attrs = ('T', _op.get_attr('T'), 'device_name', _op.get_attr('device_name'), 'tensor_name', _op.get_attr('tensor_name'), 'debug_urls', _op.get_attr('debug_urls'), 'gated_grpc', _op.get_attr('gated_grpc'))
        _execute.record_gradient('DebugIdentity', _inputs_flat, _attrs, _result, name)
        (_result,) = _result
        return _result
    else:
        try:
            _result = _pywrap_tensorflow.TFE_Py_FastPathExecute(_ctx._handle, _ctx.device_name, 'DebugIdentity', name, _ctx._post_execution_callbacks, input, 'device_name', device_name, 'tensor_name', tensor_name, 'debug_urls', debug_urls, 'gated_grpc', gated_grpc)
            return _result
        except _core._FallbackException:
            return debug_identity_eager_fallback(input, device_name=device_name, tensor_name=tensor_name, debug_urls=debug_urls, gated_grpc=gated_grpc, name=name)
        except _core._NotOkStatusException as e:
            if (name is not None):
                message = ((e.message + ' name: ') + name)
            else:
                message = e.message
            _six.raise_from(_core._status_to_exception(e.code, message), None)