EasyNetQ.Hosepipe是EasyNetQ队列管理工具。用来取回队列中的消息并重新发布这些消息。还可以用它来检测错误队列,并重试发布消息。

用法

EasyNetQ.Hosepipe.exe <command> [<option:value> ..]

命令

dump    转存队列中的所有消息到一个指定的目录中。
注意:这将为每一个消息创建三个文件: 消息体:
<队列名>.n.message.txt 消息的基本属性:
<队列名>.n.properties.txt 这个信息是需要重新发布的消息,包括交换机和路由的Key:
<队列名>.n.info.txt insert 重新发布一个指定目录下的所有消息。 err 转存所有错误消息到一个指定的目录中。 retry 重试发布指定目录下的EasyNetQ的错误消息。
注意:这将会忽略*.properties.txt和*.info.txt文件,因为properties和info被包含在它自身的错误信息中。 ? 输出使用说明

选项

s       连接的RabbitMq代理名称(server)。默认值'localhost'
v 虚拟主机。 默认值'/'
u 用户名。默认值'guest'
p 密码。默认值'guest'
q 拿消息所在的队列名,或者发布消息的队列名。
o 输出消息的路径。默认值当前路径。
n 重新获取的消息最大个数。默认值1000.

示例

  1. 输出队列'my_queue'中的所有消息为text文件到路径'c:temp\message'中:
EasyNetQ.Hosepipe.exe  dump s:localhost u:guest p:guest q:my_queue o:c:\temp\messages
  1. insert(重新发布)目录'c:\temp\messages'中所有消息到队列中
EasyNetQ.Hosepipe.exe insert s:localhost u:guest p:guest o:c:\temp\messages
  1. 转存localhost服务器中,EasyNetQ的全部消息到目录'c:\temp\message'中。
EasyNetQ.Hosepipe.exe err s:localhost o:C:\temp\messages

4.重新发布在目录'c:\temp\messages'中的全部错误信息。

EasyNetQ.Hosepipe.exe retry s:localhost u:guest p:guest o:C:\temp\messages

注意事项

'dump'和'err'命令都不会删除队列中的消息。他们只是简单的从队列拿出消息,复制这些消息到指定目录中,会保留队列中原始消息。在重新发布这些错误消息要小心,你需要先删除这些错误队列中的消息(使用RabbitMQ管理界面)。因为如果不这样做,这些消息再次失败时,这些消息将会成为新的错误消息被发布到错误队列,这很可能导致创建重复的消息。

安装

当前Hosepipe只有源代码可用。你能在下面项目中找到。https://github.com/mikehadlow/EasyNetQ/tree/master/Source/EasyNetQ.Hosepipe

英文地址:https://github.com/EasyNetQ/EasyNetQ/wiki/Re-Submitting-Error-Messages-With-EasyNetQ.Hosepipe

本文地址: http://www.cnblogs.com/HuangLiang/p/EasyNetQ_Re-Submitting-Error-Messages-With-EasyNetQ_Hosepipe.html

我的微信订阅号:open_dotNET

19-EasyNetQ:用EasyNetQ.Hosepipe重新提交错误信息的更多相关文章

  1. EasyNetQ使用(十)【用EasyNetQ.Hosepipe重新提交错误信息】

    EasyNetQ.Hosepipe是EasyNetQ队列管理工具.用来取回队列中的消息并重新发布这些消息.还可以用它来检测错误队列,并重试发布消息. 用法 EasyNetQ.Hosepipe.exe ...

  2. 14,EasyNetQ-使用EasyNetQ.Hosepipe重新提交错误消息

    EasyNetQ队列管理实用程序. 用它从队列中抓取消息并重新发布. 还可以用它来检查错误队列消息并重试它们. 1,用法: EasyNetQ.Hosepipe.exe <command> ...

  3. js收集错误信息,错误上报

    线上的代码可有有时候用户会反应不好使,一般是因为js造成的! 尤其在移动端各个手机之前的差异特别大. 下面这段代码是获取能帮助你! <script> window.onerror = fu ...

  4. svn 提交错误 400 Bad Reqest MKACTIVITY 请求于XX失败 Conflict Unable to connect to a repository at URL

    思路来源:http://www.cnblogs.com/wangyt223/archive/2012/11/22/2782801.html svn 提交错误 400 Bad Reqest MKACTI ...

  5. IntelliJ IDEA svn 提交错误

    环境说明: 系统:Mac OS X 10.9 以及 10.10 系统设置:LANG=zh_CN.UTF-8 svn 客户端:1.8.10 IntelliJ IDEA 13 毫无疑问,IntelliJ ...

  6. 基于Ajax提交formdata数据、错误信息展示和局部钩子、全局钩子的校验。

    formdata重点: 实例化FormData这个类 循环serializeArray可以节省代码量 图片要用$('#id')[0].files[0]来获得 加上contentType:false和p ...

  7. 微信通过openID发送消息/后台post、get提交并接收数据 C# .NET 配置404,500等错误信息 连接字符串

    微信通过openID发送消息/后台post.get提交并接收数据   控制器:下面是post发送消息(微信不支持从前台发送数据,之前试过,报错,需要跨域,跨域的问题解决后还不行,最后发现之后后端提交 ...

  8. 后盾网lavarel视频项目---页面post方式提交之后动态弹出错误信息

    后盾网lavarel视频项目---页面post方式提交之后动态弹出错误信息 一.总结 一句话总结: 1.思路和我想的一样,有错误的时候弹出提示错误消息的模态框就好,没有错误的时候不管它 2.把模态框的 ...

  9. TortoiseGit 错误信息Aborting commit due to empty commit message.解决

    错误信息: Aborting commit due to empty commit message. git不能完全退出(退出码 1) (47 ms @ 2016/2/19 14:03:24) 解决办 ...

随机推荐

  1. Struts04---命名空间的查询顺序以及默认执行的Action

    01.创建login.jsp <%@ page language="java" import="java.util.*" pageEncoding=&qu ...

  2. 伪变量foo foober是什么意思

    原文: The terms foobar, foo, bar, baz and qux are sometimes used as placeholder names (also referred t ...

  3. 关于linux 编程

    emacs 编辑器 gcc/g++ 编译器 gdb 调试工具 valgrind 内存泄露检查 doxygen 文档组织工具

  4. DRF 用户频率限制

    DRF 用户频率限制 为什么要限流 1 防爬虫 匿名用户 无法限制,代理 已登录,用户名限制:买代理 2 提供服务(接口--不同用户的访问次数不一样) vip 限制访问次数 BaseThrottle ...

  5. File I|O(八)

    1.I/O:input/output 1.1.java.io.File 表示:文件或者文件夹(目录) File f=new File("文件路径") 注意:相对路径:非web项目的 ...

  6. Lua基础---运算符

    众所周知,C,C++,python等语言都有运算符,那么Lua也不例外,因为它是C写的嘛! Lua分为主要三类运算符,分别是算术运算符,关系运算符,逻辑运算符,还有特殊运算符. 1.算术运算符有: + ...

  7. ROS机器人星火计划公开课总结

    非常荣幸参加了两次星火计划公开课(上海站), 感谢NXROBO.EXBOT以及所有支持ROS机器人星火计划的小伙伴们. ----废话开始,与课程总结无关,可跳过---- 在国内20多年的求学生涯以及2 ...

  8. 快排的python实现

    快排的python实现 #python 2.7 def quick_sort(L): if len(L) <= 1: return L else: return quick_sort([lt f ...

  9. Django之模板继承

    为了在Django模板配置中减少代码的冗余,需使用模板继承 1. 语法 {% block classinfo %} {% endblock} 2. 步骤 (1)创建一个base.html把需要显示的页 ...

  10. TypeError: parse() got an unexpected keyword argument 'transport_encoding' 安装tensor后报错

    TypeError: parse() got an unexpected keyword argument 'transport_encoding' 巨蛋疼,出这个问题后,老夫真是醉了,mmp,最后在 ...