LogError() public method

public LogError ( string format ) : void
format string
return void
Ejemplo n.º 1
0
        private Node GetNodeFromDataReader(CqlDataReader reader, Logger logger)
        {
            //get address of new node, and fallback to listen_address when address is set to any
            var address = reader.GetIPAddress(reader.GetOrdinal("rpc_address"));
            if(address == null || address.Equals(IPAddress.Any))
                address = reader.GetIPAddress(reader.GetOrdinal("peer"));

            var dc = reader.GetString(reader.GetOrdinal("data_center"));
            var rack = reader.GetString(reader.GetOrdinal("rack"));

            //check if we have an address, otherwise ignore
            if(address == null || dc == null || rack == null)
            {
                logger.LogError("Incomplete node information retrieved for a node: address={0}, dc={1}, rack={2}",
                                address != null ? address.ToString() : "(address not found!)",
                                dc ?? "(datacenter not found)",
                                rack ?? "(rack not found)");

                return null;
            }

            //get tokens
            var tokens = (reader.GetSet<string>(reader.GetOrdinal("tokens"))) ?? new HashSet<string>();

            //distill protocol version from release version
            var release = reader.GetString(reader.GetOrdinal("release_version"));
            byte protocolVersion = DistillProtocolVersion(release);

            //create a new node
            return new Node(address, this)
            {
                DataCenter = dc,
                Rack = rack,
                Tokens = tokens,
                ProtocolVersion = protocolVersion
            };
        }