最近遇到一个关于netty的问题,先来看问题

使用netty发送消息,功能正常,但是每次发送会有类似如下警告信息

警告: The pipeline contains no upstream handlers; discarding: [id: 0x00807c88] OPEN

2015-9-6 15:39:12 org.jboss.netty.channel.DefaultChannelPipeline

警告: The pipeline contains no upstream handlers; discarding: [id: 0x00807c88, /10.100.17.38:64293 => /10.101.22.108:40018] BOUND: /10.100.17.38:64293

2015-9-6 15:39:12 org.jboss.netty.channel.DefaultChannelPipeline

警告: The pipeline contains no upstream handlers; discarding: [id: 0x00807c88, /10.100.17.38:64293 => /10.101.22.108:40018] CONNECTED: /10.101.22.108:40018

2015-9-6 15:39:12 org.jboss.netty.channel.DefaultChannelPipeline

警告: The pipeline contains no upstream handlers; discarding: [id: 0x00807c88, /10.100.17.38:64293 => /10.101.22.108:40018] WRITTEN_AMOUNT: 365

2015-9-6 15:40:41 org.jboss.netty.channel.DefaultChannelPipeline

警告: The pipeline contains no upstream handlers; discarding: [id: 0x00807c88, /10.100.17.38:64293 => /10.101.22.108:40018] WRITTEN_AMOUNT: 364

虽然不影响功能,但是会造成大量的日志,按照公司的业务量,一天差不多3个G,运维要打人了。。

从错误信息看,是说发送之前,缺少upstreamHandler,因为是直接发送,所以没有添加handler,但是这个警告有点儿太恶心人了。。

为了不让他警告,只能做如下处理,在bootsrap进行connect之前,设置一个handler进去

bootstrap.setPipeline(Channels.pipeline(new ChannelUpstreamHandler(){

@Override

public void handleUpstream(ChannelHandlerContext ctx,

ChannelEvent e) throws Exception {

//DO NOTHING,防止警告,增加系统日志负担

}

}));

我是为了不让他警告,有需求的同学可以自行替换handler,只要有类似这么个handler,就不会有警告;

问题解决,没有贴出全部代码,不过应该解释清楚了,不清楚的,可以联系我

虽然解决了问题,但是感觉应该还有别的解决方式,之前考虑的思路是通过修改log4j的配置文件来达到不输出警告的目的,这个警告是netty内部的,调用的logger.warn,感觉应该是可以通过这种方式实现的,但是始终没有尝试成功,要是哪位仁兄解决了,请赐教

Netty 警告 The pipeline contains no upstream handlers; discarding:相关推荐

  1. Netty之大动脉Pipeline

    https://www.cnblogs.com/wuzhenzhao/p/11221561.html Pipeline 设计原理 Channel 与ChannelPipeline: 相信大家都已经知道 ...

  2. Netty实战 IM即时通讯系统(十一)pipeline与channelHandler

    Netty实战 IM即时通讯系统(十一)pipeline与channelHandler 零. 目录 IM系统简介 Netty 简介 Netty 环境配置 服务端启动流程 客户端启动流程 实战: 客户端 ...

  3. Pipeline模式(netty源码死磕6)

    精进篇:netty源码死磕6  巧夺天工--Pipeline模式揭秘 1. 巧夺天工--Pipeline模式揭秘 1.1. Pipeline模式简介 管道的发名者叫,Malcolm Douglas M ...

  4. Netty的断线重连

    因为工作中经常使用到TCP,所以会频繁使用到诸如Mina或Netty之类的通信框架,为了方便项目的逻辑调用,经常会在框架的基础上再一次进行封装,这样做其实有画蛇添足的嫌疑,但也是无奈之举. 这里主要记 ...

  5. Netty:透明地使用SPDY和HTTP

    大多数人已经从谷歌那里听说过SPDY,该协议被提议作为老化的HTTP协议的替代品. Web服务器是浏览器正在缓慢地实现该协议,并且支持正在增长. 在最近的文章中,我已经写过SPDY的工作方式以及如何在 ...

  6. NIO与Netty编程(三)之Netty编程

    1.概述 Netty是JBOSS提供的一个Java开源框架.Netty提供异步的,基于事件驱动的网络应用程序框架,用以快速开发高性能.高可靠性的网络IO程序. Netty是一个基于NIO的网络编程框架 ...

  7. Netty in Action 读书

    Netty in Action 作者: Norman Maurer / Marvin Allen Wolfthal 出版社:Manning Publications 出版年:2015-12-31 页数 ...

  8. Netty In Action中文版

    第一章:Netty介绍 本章介绍 Netty介绍 为什么要使用non-blocking IO(NIO) 阻塞IO(blocking IO)和非阻塞IO(non-blocking IO)对比 Java ...

  9. NIO 与 Netty 编程

    多线程编程 基本知识回顾 线程安全 线程间通信 BIO 编程 NIO 编程 概述 文件IO 网络IO AIO 和IO 总结 Netty 框架 概述 核心API 入门案例  ...

最新文章

  1. 一步一步学Silverlight 2系列(3):界面布局
  2. 李宏毅机器学习笔记(三)——Regression: output a scalar amp;amp; Gradient Descent
  3. 行业新价值 看物联网的那些“后续力量”
  4. C++Binomia distribution二项分布的实现算法(附完整源码)
  5. 获取Dataset前几条数据的两种方法
  6. C++11的for循环使用auto的新用法
  7. javascript for in,for each,for循环遍历区别
  8. 橙白oj18训练作业2-题解、代码
  9. 计算机二级考试c语言冲刺,计算机二级C语言考试冲刺练习题
  10. 吴恩达神经网络和深度学习-学习笔记-26-迁移学习(transfer learning)
  11. 深入理解java虚拟机 - 垃圾回收机制(GC)
  12. 双因素方差分析 matlab,[转载]MATLAB的双因素有交互效应的方差分析
  13. 第24篇 研究WebRTC官网之生成工程文件
  14. 实习周记----第三周
  15. STM32F103_study52_The punctual atoms(STM32 The running light experiment )
  16. java连接phoenix
  17. SAP License:公司上一套sap系统得多少钱?
  18. 2019阿里秋招一道笔试题(关于火柴拼出最大数字) - Android开发岗
  19. linux gre配置,Linux设置gre 隧道
  20. Android-涂鸦板

热门文章

  1. CreateFont()函数的MSDN翻译
  2. javascript11位手机号码正则表达式
  3. EXCEL,筛选合并单元格后的全部内容
  4. JDK11占比第一?
  5. mongodb集群-副本集(CSRS)
  6. 刷手机流量,反正浪费就完事了
  7. python打开文件对话框
  8. AprilTags图像识别定位实例
  9. 转动的太极纯HTML代码
  10. css处理图片下方留白问题