@Override public ISOMsg filter (ISOChannel channel, ISOMsg m, LogEvent evt) { if (channelNameField != null) m.set(channelNameField, channel.getName()); if (socketInfoField != null && channel instanceof BaseChannel) { Socket socket = ((BaseChannel) channel).getSocket(); InetSocketAddress remoteAddr = (InetSocketAddress) socket.getRemoteSocketAddress(); InetSocketAddress localAddr = (InetSocketAddress) socket.getLocalSocketAddress(); StringBuilder sb = new StringBuilder(); if (socketInfoField.equals(channelNameField)) { sb.append(channel.getName()); sb.append(' '); } sb.append(localAddr.getAddress().getHostAddress()); sb.append(':'); sb.append(Integer.toString (localAddr.getPort())); sb.append(' '); sb.append(remoteAddr.getAddress().getHostAddress()); sb.append(':'); sb.append(Integer.toString (remoteAddr.getPort())); m.set (socketInfoField, sb.toString()); } return m; } }
NameRegistrar.unregister("channel."+channel.getName());