332 Star 2.4K Fork 848

GVPopenspug / spug

 / 详情

关于scheduler redis连接的错误

已关闭
创建于  
2021-05-20 17:29

环境:
(docker部署,基础镜像均为centos:7,docker-compose整合,版本 3)
spug: v2.3.16
redis: 3.2.12 (同样已测试 6.2.3 和 5.0版本)
mysql: 5.7
python: 3.6.8(venv)

其中redis 5.0 和 3.2 报错内容一致,6.x报错为redis.exceptions.ResponseError: WRONGPASS invalid username-password pair or user is disabled.

前端体现在登陆时报错:

Exception: Invalid input of type: 'NoneType'. Convert to a bytes, string, int or float first.

scheduler.log monitor.log 日志持续报错 :

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "manage.py", line 24, in <module>
    main()
  File "manage.py", line 20, in main
    execute_from_command_line(sys.argv)
  File "/spug/spug_api/venv/lib64/python3.6/site-packages/django/core/management/__init__.py", line 381, in execute_from_command_line
    utility.execute()
  File "/spug/spug_api/venv/lib64/python3.6/site-packages/django/core/management/__init__.py", line 375, in execute
    self.fetch_command(subcommand).run_from_argv(self.argv)
  File "/spug/spug_api/venv/lib64/python3.6/site-packages/django/core/management/base.py", line 323, in run_from_argv
    self.execute(*args, **cmd_options)
  File "/spug/spug_api/venv/lib64/python3.6/site-packages/django/core/management/base.py", line 364, in execute
    output = self.handle(*args, **options)
  File "/spug/spug_api/apps/schedule/management/commands/runscheduler.py", line 16, in handle
    s.run()
  File "/spug/spug_api/apps/schedule/scheduler.py", line 110, in run
    rds_cli.delete(settings.SCHEDULE_KEY)
  File "/spug/spug_api/venv/lib64/python3.6/site-packages/redis/client.py", line 1567, in delete
    return self.execute_command('DEL', *names)
  File "/spug/spug_api/venv/lib64/python3.6/site-packages/redis/client.py", line 898, in execute_command
    conn = self.connection or pool.get_connection(command_name, **options)
  File "/spug/spug_api/venv/lib64/python3.6/site-packages/redis/connection.py", line 1192, in get_connection
    connection.connect()
  File "/spug/spug_api/venv/lib64/python3.6/site-packages/redis/connection.py", line 567, in connect
    self.on_connect()
  File "/spug/spug_api/venv/lib64/python3.6/site-packages/redis/connection.py", line 649, in on_connect
    self.send_command('AUTH', self.password, check_health=False)
  File "/spug/spug_api/venv/lib64/python3.6/site-packages/redis/connection.py", line 725, in send_command
    self.send_packed_command(self.pack_command(*args),
  File "/spug/spug_api/venv/lib64/python3.6/site-packages/redis/connection.py", line 775, in pack_command
    for arg in imap(self.encoder.encode, args):
  File "/spug/spug_api/venv/lib64/python3.6/site-packages/redis/connection.py", line 120, in encode
    "bytes, string, int or float first." % typename)
redis.exceptions.DataError: Invalid input of type: 'NoneType'. Convert to a bytes, string, int or float first.

worker.log 日志持续报错:

Running worker for channels ['ssh_exec']
Traceback (most recent call last):
  File "manage.py", line 24, in <module>
    main()
  File "manage.py", line 20, in main
    execute_from_command_line(sys.argv)
  File "/spug/spug_api/venv/lib64/python3.6/site-packages/django/core/management/__init__.py", line 381, in execute_from_command_line
    utility.execute()
  File "/spug/spug_api/venv/lib64/python3.6/site-packages/django/core/management/__init__.py", line 375, in execute
    self.fetch_command(subcommand).run_from_argv(self.argv)
  File "/spug/spug_api/venv/lib64/python3.6/site-packages/django/core/management/base.py", line 323, in run_from_argv
    self.execute(*args, **cmd_options)
  File "/spug/spug_api/venv/lib64/python3.6/site-packages/django/core/management/base.py", line 364, in execute
    output = self.handle(*args, **options)
  File "/spug/spug_api/venv/lib64/python3.6/site-packages/channels/management/commands/runworker.py", line 46, in handle
    worker.run()
  File "/spug/spug_api/venv/lib64/python3.6/site-packages/asgiref/server.py", line 60, in run
    event_loop.run_until_complete(self.handle())
  File "/usr/lib64/python3.6/asyncio/base_events.py", line 484, in run_until_complete
    return future.result()
  File "/spug/spug_api/venv/lib64/python3.6/site-packages/channels/worker.py", line 30, in handle
    [listener.result() for listener in listeners]
  File "/spug/spug_api/venv/lib64/python3.6/site-packages/channels/worker.py", line 30, in <listcomp>
    [listener.result() for listener in listeners]
  File "/spug/spug_api/venv/lib64/python3.6/site-packages/channels/worker.py", line 37, in listener
    message = await self.channel_layer.receive(channel)
  File "/spug/spug_api/venv/lib64/python3.6/site-packages/channels_redis/core.py", line 461, in receive
    return (await self.receive_single(channel))[1]
  File "/spug/spug_api/venv/lib64/python3.6/site-packages/channels_redis/core.py", line 484, in receive_single
    index, channel_key, timeout=self.brpop_timeout
  File "/spug/spug_api/venv/lib64/python3.6/site-packages/channels_redis/core.py", line 324, in _brpop_with_clean
    async with self.connection(index) as connection:
  File "/spug/spug_api/venv/lib64/python3.6/site-packages/channels_redis/core.py", line 820, in __aenter__
    self.conn = await self.pool.pop()
  File "/spug/spug_api/venv/lib64/python3.6/site-packages/channels_redis/core.py", line 70, in pop
    conns.append(await aioredis.create_redis(**self.host, loop=loop))
  File "/spug/spug_api/venv/lib64/python3.6/site-packages/aioredis/commands/__init__.py", line 175, in create_redis
    loop=loop)
  File "/spug/spug_api/venv/lib64/python3.6/site-packages/aioredis/connection.py", line 135, in create_connection
    await conn.select(db)
  File "/spug/spug_api/venv/lib64/python3.6/site-packages/aioredis/util.py", line 52, in wait_ok
    res = await fut
aioredis.errors.AuthError: NOAUTH Authentication required.

关于文档公布要求redis需在3.x以上,但测试的3个版本都不可用,暂不清楚原因,希望协助解决 !

评论 (2)

0x5c0f 创建了任务
0x5c0f 关联仓库设置为openspug/spug
展开全部操作日志

请确认一下你的redis是否不用密码可以直接访问链接?
如果你的redis加了密码,那么可以参考这里尝试解决:https://spug.dev/docs/install-error/#%E5%A6%82%E4%BD%95%E9%85%8D%E7%BD%AE%E4%BD%BF%E7%94%A8%E5%B8%A6%E5%AF%86%E7%A0%81%E7%9A%84-redis-%E6%9C%8D%E5%8A%A1%EF%BC%9F

我已经放弃测试了,不过我可以确认,redis密码绝对是可用,配置文件也是参照上述地址改的,和mysql配置一同存放于推荐位置. 另外仓库中的Dockerfile似乎并不能正常使用

0x5c0f 任务状态待办的 修改为已拒绝

登录 后才可以发表评论

状态
负责人
里程碑
Pull Requests
关联的 Pull Requests 被合并后可能会关闭此 issue
分支
开始日期   -   截止日期
-
置顶选项
优先级
参与者(2)
802491 x0x5c0f 1700709785
Python
1
https://gitee.com/openspug/spug.git
git@gitee.com:openspug/spug.git
openspug
spug
spug

搜索帮助

344bd9b3 5694891 D2dac590 5694891