在slack中协作调试python应用程序

slack-pdb的Python项目详细描述


https://travis-ci.org/coddingtonbear/slackpdb.svg?branch=master

slackpdb是rpdb的一种改编,它不是打开一个端口,而是 允许您通过telnet进行调试,连接到可配置的松弛 通道,以便可以协作远程调试应用程序。

import slackpdb
slackpdb.set_trace(
    token="<your slack token>",
    channel="#debugger_hangout",
)

当到达set_trace()时,脚本将“挂起”,这是获得 它将继续访问slackpdb,方法是与连接到 在IRC频道上方。

要与调试器交互,只需在加前缀的通道中发送消息 用这个用户名,它宣布自己为,或者简单地说“!“。

例如,以下两个命令是等效的,每个命令都将 显示pdb帮助屏幕(确保将“myhostname”替换为 用户名选定的机器人):

!help
slackpdb: help

安装

来自pip

pip install slackpdb

选项

  • token:用于连接slack的令牌;如果没有, 您可以在https://my.slack.com/services/new/bot快速生成一个。笔记 如果未指定,则可以从 SLACKPDB_API_TOKEN环境变量,或者,如果django选项是 从名为SLACKPDB_API_TOKEN的django设置设置为True
  • channel必需):通道的名称(以#开头)。
  • limit_access_to:昵称列表 允许与调试器交互。
  • {TT11}$:最大等待此秒数 以前在通道中与调试器交互的人 断开连接并继续执行。默认值:60秒。
  • django:(默认值:False)尝试从 名为SLACKPDB_API_TOKEN的django设置(如果未指定)。

安全免责声明

这个库的工作方式是固有的危险的;假设 您可以从调试器中执行任意python代码, 强烈建议您采取一切合理措施确保 您可以控制谁能够执行调试器命令。

只是为了确保这一点是明确的:你们都有责任 确定你愿意承担的风险水平,以及 采取适当行动降低风险。

如图书馆许可证所述(见附件 LICENSE.txt):

THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
SUCH DAMAGE.

祝你好运,调试愉快!

故障排除

如果看不到机器人进入指定频道,请尝试增加 通过在跟踪上方添加以下行来收集日志级别 关于在 连接到IRC服务器:

import logging
logging.basicConfig(filename='/path/to/somewhere.log', level=logging.DEBUG)

作者

亚当·科丁顿<;me@adamcoddington.net>;-http://adamcoddington.net/

这个库是rpdb的一个分支,它的基础是 欠Bertrand Janin的b@janin.com>;-http://tamentis.com/rpdb<;https://github.com/tamentis/rpdb>;的所有其他贡献者 包括以下内容:

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
显示图像的RGB编号的java   java JavaFX画布2D游戏:背景变换vs.绘画   在到达maxElementsInMemory之前创建的java DiskMarker   a4j:ajax可用事件的java详尽列表?   java从批处理文件运行jar文件,如果出现错误,则显示meessage   音频Java在背景音乐之上播放声音   用于在FTP中上载文件的java更改目录   尽管设置了必要的属性,java列表项仍不会保持选中状态   java Stanford Core NLP解析与CSV   java使用缓冲区合并热态和冷态   java无法初始化类javax。加密。JCE安全   对这个Java循环如此困惑的输入   java Spring RabbitMQ SimpleRabbitListenerContainerFactory用法   java如何使用jGrowl创建JSF消息   安装jRebel插件后,Netbeans项目中的java源文件夹不可见?   如何在Java中解析复杂的json字符串   java Spark KafkaUtils CreateRDD在键上应用过滤器   try块中的java代码被忽略,为什么?