Closed xia-i closed 4 years ago
+1
+1
修复了一个 TCP client 部分报 exception 导致 event_loop 结束的问题。然后也加了 event_loop 结束的时候输出 tasks 信息。建议更新最新的 commit 然后出错的时候把输出的信息贴上来。
升级了最新的commit,确实比较好了 但是偶尔还是会卡住,比如刚启动的时候, 比如下图, 在19:59:49 卡住,我重启后又可以了
还有这种说检测到之后就卡住了
有什么需要开其他log吗?
我挂服务器里然后卡主了,一天的辣条都没了。
还有运行到一半卡主的,辣条抢着抢着不抢了,停住了。
总是莫名就停住了
我看着直播在本地挂这着的时候 就会停住 有时候就单单挂在那里也会停住
修复了一个 TCP client 部分报 exception 导致 event_loop 结束的问题。然后也加了 event_loop 结束的时候输出 tasks 信息。建议更新最新的 commit 然后出错的时候把输出的信息贴上来。
卡住并不会输出任何信息,晚上礼物多的时候很容易卡住
我也是这样的情况 centos7 python3.8 莫名其妙就卡住了 每天都会卡一次(所以我每天手动重启脚本) 需要什么log吗
@yawwwwwn
新版压缩包能发我一个吗
我们生来就不该让我们生活周围那些鄙夷我们的,唾弃我们的,赞赏我们的,关心我们的,憎恨我们的,深爱我们的人失望...
------------------ 原始邮件 ------------------ 发件人: "CberYellowstone"<notifications@github.com>; 发送时间: 2020年2月23日(星期天) 下午4:10 收件人: "Dawnnnnnn/bilibili-live-tools"<bilibili-live-tools@noreply.github.com>; 抄送: "Subscribed"<subscribed@noreply.github.com>; 主题: Re: [Dawnnnnnn/bilibili-live-tools] 新版容易出现卡住的情况 (#259)
我也是这样的情况 centos7 python3.8 莫名其妙就卡住了 每天都会卡一次(所以我每天手动重启脚本) 需要什么log吗
— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub, or unsubscribe.
@13160230636 ?
OK
我们生来就不该让我们生活周围那些鄙夷我们的,唾弃我们的,赞赏我们的,关心我们的,憎恨我们的,深爱我们的人失望...
------------------ 原始邮件 ------------------ 发件人: "CberYellowstone"<notifications@github.com>; 发送时间: 2020年2月23日(星期天) 晚上6:45 收件人: "Dawnnnnnn/bilibili-live-tools"<bilibili-live-tools@noreply.github.com>; 抄送: "常丶尐虫"<873506702@qq.com>; "Mention"<mention@noreply.github.com>; 主题: Re: [Dawnnnnnn/bilibili-live-tools] 新版容易出现卡住的情况 (#259)
@13160230636 ?
— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub, or unsubscribe.
OK 我们生来就不该让我们生活周围那些鄙夷我们的,唾弃我们的,赞赏我们的,关心我们的,憎恨我们的,深爱我们的人失望... … ------------------ 原始邮件 ------------------ 发件人: "CberYellowstone"<notifications@github.com>; 发送时间: 2020年2月23日(星期天) 晚上6:45 收件人: "Dawnnnnnn/bilibili-live-tools"<bilibili-live-tools@noreply.github.com>; 抄送: "常丶尐虫"<873506702@qq.com>; "Mention"<mention@noreply.github.com>; 主题: Re: [Dawnnnnnn/bilibili-live-tools] 新版容易出现卡住的情况 (#259) @13160230636 ? — You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub, or unsubscribe.
你发的什么乱七八糟的?要发去QQ空间,随你怎么发
OK
------------------ 原始邮件 ------------------ 发件人: "CberYellowstone"<notifications@github.com>; 发送时间: 2020年2月23日(星期天) 晚上6:45 收件人: "Dawnnnnnn/bilibili-live-tools"<bilibili-live-tools@noreply.github.com>; 抄送: "常丶尐虫"<873506702@qq.com>; "Mention"<mention@noreply.github.com>; 主题: Re: [Dawnnnnnn/bilibili-live-tools] 新版容易出现卡住的情况 (#259)
@13160230636 ?
— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub, or unsubscribe.
对于辣条机运行卡住我的解决方案是
使用shell脚本定时检测辣条机是否连续5min或以上没有输出log
B站连续5分钟没有抽奖的时候还是蛮少的,我个人觉得这个频率刚好
使用crontab每分钟执行一次脚本
* * * * * /bin/bash /脚本存放路径/auto_reboot_bilibili_live.sh
脚本内有几个变量和数值需要自行修改
已标注
auto_reboot_bilibili_live.zip
仅为各位大佬提供临时解决思路及方案(个人认为临时解决可用)
应该还是领舰长的问题,只领辣条抽奖就还好
哈欠大佬 看看ReceiveMessageLoop
是不是应该放进try里 这个是有概率raise的吧
https://github.com/Dawnnnnnn/bilibili-live-tools/blob/66db5ca5d61bcf8bf5aa47da616277d8a7ddf4a7/TCP_monitor.py#L49
升级了最新的commit,确实比较好了 但是偶尔还是会卡住,比如刚启动的时候, 比如下图, 在19:59:49 卡住,我重启后又可以了
还有这种说检测到之后就卡住了
有什么需要开其他log吗?
我这也开始花式报错了
[2020-02-28 07:25:36] [Info] 开始执行每日任务 [2020-02-28 07:25:36] [Info] 签到状态:今日已签到过,无法重复签到 [2020-02-28 07:25:37] [Info] 双端观看直播:奖励已领取 [2020-02-28 07:25:48] [Error] Traceback (most recent call last): File "/root/1024/Tasks.py", line 138, in run await self.auto_send_gift() File "/root/1024/Tasks.py", line 79, in auto_send_gift a = await utils.fetch_medal(printer=False) File "/root/1024/utils.py", line 55, in fetch_medal roomid = i['roomid'] KeyError: 'roomid'
就无限循环
同时挂了5个号就发现这一个会这样报错,就很奇怪
升级了最新的commit,确实比较好了 但是偶尔还是会卡住,比如刚启动的时候, 比如下图, 在19:59:49 卡住,我重启后又可以了 还有这种说检测到之后就卡住了 有什么需要开其他log吗?
我这也开始花式报错了
[2020-02-28 07:25:36] [Info] 开始执行每日任务 [2020-02-28 07:25:36] [Info] 签到状态:今日已签到过,无法重复签到 [2020-02-28 07:25:37] [Info] 双端观看直播:奖励已领取 [2020-02-28 07:25:48] [Error] Traceback (most recent call last): File "/root/1024/Tasks.py", line 138, in run await self.auto_send_gift() File "/root/1024/Tasks.py", line 79, in auto_send_gift a = await utils.fetch_medal(printer=False) File "/root/1024/utils.py", line 55, in fetch_medal roomid = i['roomid'] KeyError: 'roomid'
就无限循环 同时挂了5个号就发现这一个会这样报错,就很奇怪
重启也没用,不是偶发性bug
应该不是吧,我这里其它4个号都没问题
升级了最新的commit,确实比较好了 但是偶尔还是会卡住,比如刚启动的时候, 比如下图, 在19:59:49 卡住,我重启后又可以了 还有这种说检测到之后就卡住了 有什么需要开其他log吗?
我这也开始花式报错了
[2020-02-28 07:25:36] [Info] 开始执行每日任务 [2020-02-28 07:25:36] [Info] 签到状态:今日已签到过,无法重复签到 [2020-02-28 07:25:37] [Info] 双端观看直播:奖励已领取 [2020-02-28 07:25:48] [Error] Traceback (most recent call last): File "/root/1024/Tasks.py", line 138, in run await self.auto_send_gift() File "/root/1024/Tasks.py", line 79, in auto_send_gift a = await utils.fetch_medal(printer=False) File "/root/1024/utils.py", line 55, in fetch_medal roomid = i['roomid'] KeyError: 'roomid'
就无限循环 同时挂了5个号就发现这一个会这样报错,就很奇怪
@yawwwwwn @Dawnnnnnn 我想我找到问题了 他挂的这个粉丝勋章 并没有开直播间 但是这人又让我开了自动送辣条 我现在关了,没有发生循环报错了 不过用命令“4”查询勋章状态的时候还是报错(毕竟都没有直播间号) Task exception was never retrieved future: <Task finished coro=<fetch_medal() done, defined at /root/1024/utils.py:39> exception=KeyError('roomid')> Traceback (most recent call last): File "/root/1024/utils.py", line 55, in fetch_medal roomid = i['roomid'] KeyError: 'roomid' 或许可以加一条检测来解决?
哈欠大佬 看看
ReceiveMessageLoop
是不是应该放进try里 这个是有概率raise的吧 https://github.com/Dawnnnnnn/bilibili-live-tools/blob/66db5ca5d61bcf8bf5aa47da616277d8a7ddf4a7/TCP_monitor.py#L49
但是 ReceiveMessageLoop()
调用的 ReadSocketData()
每一步都是有 try 的。
@yawwwwwn @Dawnnnnnn 我想我找到问题了 他挂的这个粉丝勋章 并没有开直播间 但是这人又让我开了自动送辣条 我现在关了,没有发生循环报错了 不过用命令“4”查询勋章状态的时候还是报错(毕竟都没有直播间号) Task exception was never retrieved future: <Task finished coro=<fetch_medal() done, defined at /root/1024/utils.py:39> exception=KeyError('roomid')> Traceback (most recent call last): File "/root/1024/utils.py", line 55, in fetch_medal roomid = i['roomid'] KeyError: 'roomid' 或许可以加一条检测来解决?
懂了,这个情况我确实没想到,之后会修复。
嗯 之前确实没注意到233 这就定位了 异步的task太多了…
对了,最近偶尔也会遇到这个error:
[Error] Traceback (most recent call last): File "C:\bilibili\bilibili-live-tools\Tasks.py", line 132, in run await self.Daily_bag() File "C:\bilibili\bilibili-live-tools\Tasks.py", line 23, in Daily_bag for i in range(0, len(json_response['data']['bag_list'])): TypeError: object of type 'NoneType' has no len()
@yawwwwwn 哈欠大佬 我试着自己加 log 找出卡在哪里, 发现好象是在等舰长服务器反馈
看了下requests的文档 加一个timeout吧 https://requests.readthedocs.io/en/master/user/quickstart/#timeouts
@yawwwwwn @Dawnnnnnn 我想我找到问题了 他挂的这个粉丝勋章 并没有开直播间 但是这人又让我开了自动送辣条 我现在关了,没有发生循环报错了 不过用命令“4”查询勋章状态的时候还是报错(毕竟都没有直播间号) Task exception was never retrieved future: <Task finished coro=<fetch_medal() done, defined at /root/1024/utils.py:39> exception=KeyError('roomid')> Traceback (most recent call last): File "/root/1024/utils.py", line 55, in fetch_medal roomid = i['roomid'] KeyError: 'roomid' 或许可以加一条检测来解决?
看了下requests的文档 加一个timeout吧 https://requests.readthedocs.io/en/master/user/quickstart/#timeouts
已修复 #7314876 。
@yawwwwwn 下面两个也可以考虑关了
也不知道什么原因,云vps和自己电脑都这样