(Translated by https://www.hiragana.jp/)
希望更详细一点的 Workers & Fetcher 配置描述 · Issue #12 · JAVClub/core · GitHub
Skip to content
This repository has been archived by the owner on Jun 14, 2021. It is now read-only.

希望きぼうさら详细いちてんてき Workers & Fetcher 配置はいち描述 #12

Closed
monsterxcn opened this issue May 2, 2020 · 11 comments
Labels
good first issue Good for newcomers

Comments

@monsterxcn
Copy link

monsterxcn commented May 2, 2020

おり腾了一天将全套系统部署完了,fetch りょう OneJAV てき几部かげへんいた本地ほんじきさき成功せいこう move いた rclone 挂载てき Google Drive ,网页とう陆也以看いたうんはしかた盘中てきぶんけん WebUI 显示ゆう一个硬盘但是没有视频。

不知ふちどういん为我ようてきうんはしどもとおるかた盘还いん配置はいち错了 QAQ 。fetcher lemp core 全部ぜんぶ使用しよう Docker 部署ぶしょ以下いかてき部分ぶぶん配置はいち过程:

core

关于 core ちゅう说要よういた client_id client_secret access_token refresh_tokenただしわが并不知道ともみちざい哪里ようてき... rclone ざいふく务器挂载かた盘时たおせゆう需要じゅよう client_id client_secretしかきさきてん链接授权きさきかえしかいりょう access_token refresh_tokenこれきさき本地ほんじ挂载和文わぶんけん move 正常せいじょう

しかきさきざいすうすえ库导にゅう drives ひょうすうすえ时说あかり这样てき

INSERT INTO `drivers` (`id`, `name`, `driverType`, `driverData`, `isEnable`, `createTime`, `updateTime`) VALUES
(1, '1', 'gd', 
'{\"oAuth\":
    {\"client_id\":\"【your_client_here】\",
    \"client_secret\":\"【your_client_secret_here】\",
    \"redirect_uri\":\"urn:ietf:wg:oauth:2.0:oob\",
    \"token\":
        {\"access_token\":\"【your_access_token_here_optional】\", 
        \"refresh_token\":\"【your_refresh_token_here】\",
        \"scope\":\"https://www.googleapis.com/auth/drive\",
        \"token_type\":\"Bearer\",
        \"expiry_date\":1583679345619}},
    \"drive\":{\"driveId\":\"【your_drive_or_folder_id_here】\"},
    \"encryption\":
        {\"secret\":\"【path_ase_secret】\",
        \"server\":\"【your_gd_proxy_server_here】"}}',
1, '【timestanp_in_ms_here】', '【timestanp_in_ms_here】');

嗯,このみてきわが按照 rclone 挂载时的 client_id client_secret access_token refresh_token はまこうりょうきさきめんてき driveId わがはまてき https://drive.google.com/drive/folders/【id】 这里きさきめんてきぶんけん夹 id 。

しかきさき secret わが就不知道ともみち什么りょう QAQ 。わがはた部署ぶしょ google drive workers 时要はまてき aes_password はまりょう进去。

workers

workers さとめんてき gd-config.js ちゅうようはま aes_password client_id client_secret refresh_tokenきさきさん个我はた rclone 挂载てき时候几个对应 client_id client_secret refresh_token はま进去りょうaes_password emmm... 不知ふちどう啥,わが就把 access_token はまりょう进去,webpack 构建かんきさき部署ぶしょいた workers.dev りょう

以上いじょう就是わが认为可能かのう错的地方ちほうりょう,如果还有什么よう补充てき细节请提。霖大ゆう时间てき话救すくい孩子!かにかにりょう


わが尝试はた AES みつてきみつ码填ざい workers gd-config.js てき aes_passwordおさむあらため drivers すうすえひょうちゅうてき 【path_ase_secret】 为 AES みつきさきてきたに盘文けん夹 id ,しかきさき更新こうしん core 容器ようき编排,ただしこのみぞう也不对 QAQ

@LynMoe
Copy link
Contributor

LynMoe commented May 2, 2020

くびさきかん谢能はな费那么多时间らい踩坑

  • ぼつゆう视频显示
    ざい core てき配置はいち中有ちゅううぼつゆう设定てい时任务呢?(就是 importer ちゅう cron

  • secret aes_password
    这里可能かのうてき确有てん误导,这两个是同一どういつ个东西にしきさき续会こう虑统いち说法

别的骤看おこりらいぼつゆう什么问题,如果还有什么问题以把 log level 开到 debug はた错误こころざしじょうらい

@monsterxcn
Copy link
Author

monsterxcn commented May 2, 2020

core てき dev.json 按照だま认的:

"cron": [
    {
        "driveId": 1,
        "interval": 36000000,
        "doFull": true
    }
]

ぶんけんわがしゅ动 rclone move いたたに盘,不知ふちどう这个动任务是怎么よう ...

docker loglevel いちちょく debug ,にちこころざしうつしりょう一大いちだいうずたか 233 ,core てきこころざし

{"log":"\u001b[36m[2020-05-02T16:44:23.094] [DEBUG] Module: Cache - \u001b[39m[api_checktoken_sjdkfgho9we84yt98w7yhtguierhbgu93oh578gwijhgnwo5] Cache missed, creating one\n","stream":"stdout","time":"2020-05-02T08:44:23.095020795Z"}
{"log":"\u001b[36m[2020-05-02T16:44:23.095] [DEBUG] Module: User - \u001b[39mChecking token sjdkfgho9we84yt98w7yhtguierhbgu93oh578gwijhgnwo5\n","stream":"stdout","time":"2020-05-02T08:44:23.153415678Z"}
{"log":"\u001b[36m[2020-05-02T16:44:23.099] [DEBUG] Module: Cache - \u001b[39m[api_checktoken_sjdkfgho9we84yt98w7yhtguierhbgu93oh578gwijhgnwo5] Cache missed, creating one\n","stream":"stdout","time":"2020-05-02T08:44:23.153443417Z"}
{"log":"\u001b[36m[2020-05-02T16:44:23.099] [DEBUG] Module: User - \u001b[39mChecking token sjdkfgho9we84yt98w7yhtguierhbgu93oh578gwijhgnwo5\n","stream":"stdout","time":"2020-05-02T08:44:23.153447963Z"}
{"log":"\u001b[36m[2020-05-02T16:44:23.136] [DEBUG] Module: Cache - \u001b[39m[api_checktoken_sjdkfgho9we84yt98w7yhtguierhbgu93oh578gwijhgnwo5] Cache missed, creating one\n","stream":"stdout","time":"2020-05-02T08:44:23.15345172Z"}
{"log":"\u001b[36m[2020-05-02T16:44:23.136] [DEBUG] Module: User - \u001b[39mChecking token sjdkfgho9we84yt98w7yhtguierhbgu93oh578gwijhgnwo5\n","stream":"stdout","time":"2020-05-02T08:44:23.153455416Z"}
{"log":"\u001b[36m[2020-05-02T16:44:23.541] [DEBUG] Module: Cache - \u001b[39m[api_checktoken_sjdkfgho9we84yt98w7yhtguierhbgu93oh578gwijhgnwo5] Cache missed, creating one\n","stream":"stdout","time":"2020-05-02T08:44:23.541665679Z"}
{"log":"\u001b[36m[2020-05-02T16:44:23.541] [DEBUG] Module: User - \u001b[39mChecking token sjdkfgho9we84yt98w7yhtguierhbgu93oh578gwijhgnwo5\n","stream":"stdout","time":"2020-05-02T08:44:23.541793979Z"}
{"log":"\u001b[36m[2020-05-02T16:44:23.542] [DEBUG] Module: Cache - \u001b[39m[api_checktoken_sjdkfgho9we84yt98w7yhtguierhbgu93oh578gwijhgnwo5] Cache missed, creating one\n","stream":"stdout","time":"2020-05-02T08:44:23.543192844Z"}
{"log":"\u001b[36m[2020-05-02T16:44:23.543] [DEBUG] Module: User - \u001b[39mChecking token sjdkfgho9we84yt98w7yhtguierhbgu93oh578gwijhgnwo5\n","stream":"stdout","time":"2020-05-02T08:44:23.543218593Z"}
{"log":"\u001b[36m[2020-05-02T16:44:23.658] [DEBUG] API: Main - \u001b[39m[UID: 1] GET /api/statistic/getData\n","stream":"stdout","time":"2020-05-02T08:44:23.65903812Z"}
{"log":"\u001b[36m[2020-05-02T16:44:23.659] [DEBUG] Module: Cache - \u001b[39m[api_statistic] Cache missed, creating one\n","stream":"stdout","time":"2020-05-02T08:44:23.659307678Z"}
{"log":"\u001b[36m[2020-05-02T16:44:23.661] [DEBUG] API: Main - \u001b[39m[UID: 1] GET /api/metadata/getList/1/20\n","stream":"stdout","time":"2020-05-02T08:44:23.661275559Z"}
{"log":"\u001b[36m[2020-05-02T16:44:23.661] [DEBUG] API: Metadata - \u001b[39mPage 1, size 20\n","stream":"stdout","time":"2020-05-02T08:44:23.66155576Z"}
{"log":"\u001b[36m[2020-05-02T16:44:23.661] [DEBUG] Module: Cache - \u001b[39m[api_metadata_list_1_20] Cache missed, creating one\n","stream":"stdout","time":"2020-05-02T08:44:23.661648199Z"}
{"log":"\u001b[36m[2020-05-02T16:44:23.665] [DEBUG] API: Main - \u001b[39m[UID: 1] GET /api/auth/check\n","stream":"stdout","time":"2020-05-02T08:44:23.666047909Z"}
{"log":"\u001b[36m[2020-05-02T16:44:23.671] [DEBUG] API: Main - \u001b[39m[UID: 1] GET /api/statistic/getData\n","stream":"stdout","time":"2020-05-02T08:44:23.671827449Z"}
{"log":"\u001b[36m[2020-05-02T16:44:23.671] [DEBUG] Module: Cache - \u001b[39m[api_statistic] Cache missed, creating one\n","stream":"stdout","time":"2020-05-02T08:44:23.67198189Z"}
{"log":"\u001b[36m[2020-05-02T16:44:23.677] [DEBUG] API: Main - \u001b[39m[UID: 1] GET /api/auth/check\n","stream":"stdout","time":"2020-05-02T08:44:23.677995665Z"}
{"log":"\u001b[36m[2020-05-02T16:44:30.051] [DEBUG] API: Main - \u001b[39m[UID: 1] GET /api/metadata/getMetaList/series/1/50\n","stream":"stdout","time":"2020-05-02T08:44:30.051452161Z"}
{"log":"\u001b[36m[2020-05-02T16:44:30.051] [DEBUG] API: Metadata - \u001b[39mType series, page 1, size 50\n","stream":"stdout","time":"2020-05-02T08:44:30.051640628Z"}
{"log":"\u001b[36m[2020-05-02T16:44:30.051] [DEBUG] Module: Cache - \u001b[39m[api_meta_list_series_1_50] Cache missed, creating one\n","stream":"stdout","time":"2020-05-02T08:44:30.05172411Z"}
{"log":"\u001b[36m[2020-05-02T16:44:32.825] [DEBUG] API: Main - \u001b[39m[UID: 1] GET /api/metadata/getMetaList/star/1/50\n","stream":"stdout","time":"2020-05-02T08:44:32.825485242Z"}
{"log":"\u001b[36m[2020-05-02T16:44:32.825] [DEBUG] API: Metadata - \u001b[39mType star, page 1, size 50\n","stream":"stdout","time":"2020-05-02T08:44:32.825633323Z"}
{"log":"\u001b[36m[2020-05-02T16:44:32.825] [DEBUG] Module: Cache - \u001b[39m[api_meta_list_stars_1_50] Cache missed, creating one\n","stream":"stdout","time":"2020-05-02T08:44:32.825786876Z"}
{"log":"\u001b[36m[2020-05-02T16:44:33.723] [DEBUG] API: Main - \u001b[39m[UID: 1] GET /api/metadata/getMetaList/tag/1/50\n","stream":"stdout","time":"2020-05-02T08:44:33.723378189Z"}
{"log":"\u001b[36m[2020-05-02T16:44:33.723] [DEBUG] API: Metadata - \u001b[39mType tag, page 1, size 50\n","stream":"stdout","time":"2020-05-02T08:44:33.723482056Z"}
{"log":"\u001b[36m[2020-05-02T16:44:33.723] [DEBUG] Module: Cache - \u001b[39m[api_meta_list_tags_1_50] Cache missed, creating one\n","stream":"stdout","time":"2020-05-02T08:44:33.72349004Z"}
{"log":"\u001b[36m[2020-05-02T16:44:34.403] [DEBUG] API: Main - \u001b[39m[UID: 1] GET /api/bookmark/getList\n","stream":"stdout","time":"2020-05-02T08:44:34.40339052Z"}
{"log":"\u001b[36m[2020-05-02T16:44:35.017] [DEBUG] API: Main - \u001b[39m[UID: 1] GET /api/metadata/getList/1/20\n","stream":"stdout","time":"2020-05-02T08:44:35.01784188Z"}
{"log":"\u001b[36m[2020-05-02T16:44:35.017] [DEBUG] API: Metadata - \u001b[39mPage 1, size 20\n","stream":"stdout","time":"2020-05-02T08:44:35.017994494Z"}
{"log":"\u001b[36m[2020-05-02T16:44:40.257] [DEBUG] API: Main - \u001b[39m[UID: 1] GET /api/statistic/getData\n","stream":"stdout","time":"2020-05-02T08:44:40.258310593Z"}
{"log":"\u001b[36m[2020-05-02T16:44:40.258] [DEBUG] Module: Cache - \u001b[39m[api_statistic] Cache missed, creating one\n","stream":"stdout","time":"2020-05-02T08:44:40.258436294Z"}
{"log":"\u001b[36m[2020-05-02T16:44:58.041] [DEBUG] Module: Cache - \u001b[39mExpired cache api_statistic cleared\n","stream":"stdout","time":"2020-05-02T08:44:58.042538495Z"}
{"log":"\u001b[36m[2020-05-02T16:45:58.043] [DEBUG] Module: Cache - \u001b[39mExpired cache api_checktoken_sjdkfgho9we84yt98w7yhtguierhbgu93oh578gwijhgnwo5 cleared\n","stream":"stdout","time":"2020-05-02T08:45:58.047838368Z"}
{"log":"\u001b[36m[2020-05-02T16:45:58.047] [DEBUG] Module: Cache - \u001b[39mExpired cache api_metadata_list_1_20 cleared\n","stream":"stdout","time":"2020-05-02T08:45:58.048441297Z"}
{"log":"\u001b[36m[2020-05-02T16:45:58.048] [DEBUG] Module: Cache - \u001b[39mExpired cache api_meta_list_series_1_50 cleared\n","stream":"stdout","time":"2020-05-02T08:45:58.048505121Z"}
{"log":"\u001b[36m[2020-05-02T16:45:58.048] [DEBUG] Module: Cache - \u001b[39mExpired cache api_meta_list_stars_1_50 cleared\n","stream":"stdout","time":"2020-05-02T08:45:58.048747348Z"}
{"log":"\u001b[36m[2020-05-02T16:45:58.048] [DEBUG] Module: Cache - \u001b[39mExpired cache api_meta_list_tags_1_50 cleared\n","stream":"stdout","time":"2020-05-02T08:45:58.048795901Z"}

说起こころざしわが想起そうきらい fetcher 一直在不停的 restart ,わが删掉りょう mt rss てきげんただとめりょう OneJAV てきげん,毕竟 mt 账号おこりらい... fetcher 配置はいち这块这样うつしてき,其他地方ちほうぼつゆうおさむあらため

    "remote": [
        {
            "driver": "OneJAV",
            "url": "https://onejav.com/new/"
        },{
            "driver": "OneJAV",
            "url": "https://onejav.com/popular/"
        },{
            "driver": "OneJAV",
            "url": "https://onejav.com/random/"
        }
    ]

qBittorrent WebUI 正常せいじょう动抓 OneJAV こうぞうしつ败了,わがざい 8585 はしこうてきめんばん上手じょうず添加てんか .torrent 载。じょう fetcher てきこころざし

{"log":"    ^\n","stream":"stderr","time":"2020-05-02T09:33:52.742082913Z"}
{"log":"\n","stream":"stderr","time":"2020-05-02T09:33:52.742087279Z"}
{"log":"Error: Configuration property \"system.logLevel\" is not defined\n","stream":"stderr","time":"2020-05-02T09:33:52.742091512Z"}
{"log":"    at Config.get (/usr/app/node_modules/config/lib/config.js:182:11)\n","stream":"stderr","time":"2020-05-02T09:33:52.742096032Z"}
{"log":"    at module.exports (/usr/app/src/module/logger.js:6:27)\n","stream":"stderr","time":"2020-05-02T09:33:52.742100539Z"}
{"log":"    at Object.\u003canonymous\u003e (/usr/app/src/module/qbittorrent.js:2:35)\n","stream":"stderr","time":"2020-05-02T09:33:52.742104866Z"}
{"log":"    at Module._compile (internal/modules/cjs/loader.js:1151:30)\n","stream":"stderr","time":"2020-05-02T09:33:52.742109839Z"}
{"log":"    at Object.Module._extensions..js (internal/modules/cjs/loader.js:1171:10)\n","stream":"stderr","time":"2020-05-02T09:33:52.74211435Z"}
{"log":"    at Module.load (internal/modules/cjs/loader.js:1000:32)\n","stream":"stderr","time":"2020-05-02T09:33:52.74211899Z"}
{"log":"    at Function.Module._load (internal/modules/cjs/loader.js:899:14)\n","stream":"stderr","time":"2020-05-02T09:33:52.742123395Z"}
{"log":"    at Module.require (internal/modules/cjs/loader.js:1040:19)\n","stream":"stderr","time":"2020-05-02T09:33:52.742127799Z"}
{"log":"    at require (internal/modules/cjs/helpers.js:72:18)\n","stream":"stderr","time":"2020-05-02T09:33:52.742132051Z"}
{"log":"    at Object.\u003canonymous\u003e (/usr/app/src/handle/init.js:5:12)\n","stream":"stderr","time":"2020-05-02T09:33:52.742136205Z"}
{"log":"WARNING: NODE_ENV value of 'dev' did not match any deployment config file names.\n","stream":"stderr","time":"2020-05-02T09:34:54.2248761Z"}
{"log":"WARNING: See https://github.com/lorenwest/node-config/wiki/Strict-Mode\n","stream":"stderr","time":"2020-05-02T09:34:54.225272509Z"}
{"log":"WARNING: No configurations found in configuration directory:/usr/app/config/\n","stream":"stderr","time":"2020-05-02T09:34:54.225369699Z"}
{"log":"WARNING: To disable this warning set SUPPRESS_NO_CONFIG_WARNING in the environment.\n","stream":"stderr","time":"2020-05-02T09:34:54.225377256Z"}
{"log":"/usr/app/node_modules/config/lib/config.js:182\n","stream":"stderr","time":"2020-05-02T09:34:54.322909029Z"}
{"log":"    throw new Error('Configuration property \"' + property + '\" is not defined');\n","stream":"stderr","time":"2020-05-02T09:34:54.322951291Z"}
{"log":"    ^\n","stream":"stderr","time":"2020-05-02T09:34:54.322955051Z"}
{"log":"\n","stream":"stderr","time":"2020-05-02T09:34:54.322957721Z"}
{"log":"Error: Configuration property \"system.logLevel\" is not defined\n","stream":"stderr","time":"2020-05-02T09:34:54.322960108Z"}
{"log":"    at Config.get (/usr/app/node_modules/config/lib/config.js:182:11)\n","stream":"stderr","time":"2020-05-02T09:34:54.32296269Z"}
{"log":"    at module.exports (/usr/app/src/module/logger.js:6:27)\n","stream":"stderr","time":"2020-05-02T09:34:54.322965293Z"}
{"log":"    at Object.\u003canonymous\u003e (/usr/app/src/module/qbittorrent.js:2:35)\n","stream":"stderr","time":"2020-05-02T09:34:54.322978267Z"}
{"log":"    at Module._compile (internal/modules/cjs/loader.js:1151:30)\n","stream":"stderr","time":"2020-05-02T09:34:54.322981421Z"}
{"log":"    at Object.Module._extensions..js (internal/modules/cjs/loader.js:1171:10)\n","stream":"stderr","time":"2020-05-02T09:34:54.322983868Z"}
{"log":"    at Module.load (internal/modules/cjs/loader.js:1000:32)\n","stream":"stderr","time":"2020-05-02T09:34:54.322993614Z"}
{"log":"    at Function.Module._load (internal/modules/cjs/loader.js:899:14)\n","stream":"stderr","time":"2020-05-02T09:34:54.322998876Z"}
{"log":"    at Module.require (internal/modules/cjs/loader.js:1040:19)\n","stream":"stderr","time":"2020-05-02T09:34:54.323002249Z"}
{"log":"    at require (internal/modules/cjs/helpers.js:72:18)\n","stream":"stderr","time":"2020-05-02T09:34:54.323004759Z"}
{"log":"    at Object.\u003canonymous\u003e (/usr/app/src/handle/init.js:5:12)\n","stream":"stderr","time":"2020-05-02T09:34:54.32300726Z"}

にちこころざし很多是重これしげ复的わが就截取りょうじゅう复的部分ぶぶん,应该ぼつゆう遗漏什么

@LynMoe
Copy link
Contributor

LynMoe commented May 2, 2020

coreてきこころざし你截取的とりてき网站てき访问こころざし而不importerてきこころざし以试试加じょう grep Importer 试试,以先关闭さい启动并等まち一分钟左右即可看到相关日志

しかきさきfetcher启动てき原因げんいんおこりらい找不いた配置はいちぶんけん以检查一下是否已经改名成dev.json并在启动语句ぜんじょう NODE_ENV=devらい让程じょ寻找到dev.json

关于てい时任务的作用さよう就是从Google Driveちゅう读取视频しんいき并导いれいたcoreてきすうすえ库中

另外そう问一句你上传到网盘的数据有没有经过fetcher处理.... (毕竟你fetcherぼつ正常せいじょう运行
core导入てき一定いっていようfetcher处理过的ざいぎょうずい便びん一个视频都可以的

@monsterxcn
Copy link
Author

monsterxcn commented May 2, 2020

啊,はららいわがぼつゆう fetcher 处理就上传到网盘りょう(逃...

fetcher 找不いた可能かのうわが按照教程きょうてい复制 dev.json ぶんけんてき位置いち错了吗我,docker fetcher てき说明:

cp config/dev.example.json dev.json

わが试试ざい config ぶんけん夹创けん dev.json

ふとしじゅく悉 Docker,emmm... Importer こころざしぞう这样,这是ぼつ连接じょうすうすえ库🐎:

root@msvultr2020:~/JAVClub_core# docker logs e928dcbda9fa | grep Importer
This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). The promise rejected with the reason:
Error: ER_BAD_DB_ERROR: Unknown database 'javclub'
    at Handshake.Sequence._packetToError (/usr/app/node_modules/mysql/lib/protocol/sequences/Sequence.js:47:14)
    at Handshake.ErrorPacket (/usr/app/node_modules/mysql/lib/protocol/sequences/Handshake.js:123:18)
    at Protocol._parsePacket (/usr/app/node_modules/mysql/lib/protocol/Protocol.js:291:23)
    at Parser._parsePacket (/usr/app/node_modules/mysql/lib/protocol/Parser.js:433:10)
    at Parser.write (/usr/app/node_modules/mysql/lib/protocol/Parser.js:43:10)
    at Protocol.write (/usr/app/node_modules/mysql/lib/protocol/Protocol.js:38:16)
    at Socket.<anonymous> (/usr/app/node_modules/mysql/lib/Connection.js:88:28)
    at Socket.<anonymous> (/usr/app/node_modules/mysql/lib/Connection.js:526:10)
    at Socket.emit (events.js:321:20)
    at Socket.EventEmitter.emit (domain.js:485:12)
    --------------------
    at Protocol._enqueue (/usr/app/node_modules/mysql/lib/protocol/Protocol.js:144:48)
    at Protocol.handshake (/usr/app/node_modules/mysql/lib/protocol/Protocol.js:51:23)
    at Connection.connect (/usr/app/node_modules/mysql/lib/Connection.js:116:18)
    at /usr/app/node_modules/knex/lib/dialects/mysql/index.js:68:18
[2020-05-02T11:41:57.960] [DEBUG] Importer: Main - Config: [ { driveId: 1, interval: 36000000, doFull: true } ]
    at new Promise (<anonymous>)
    at Client_MySQL.acquireRawConnection (/usr/app/node_modules/knex/lib/dialects/mysql/index.js:63:12)
    at create (/usr/app/node_modules/knex/lib/client.js:289:39)
    at processTicksAndRejections (internal/process/task_queues.js:97:5)

わが试了こうぞう还真 dev.json 位置いち对,教程きょうてい dev.json 复制いた fetcher 录去りょう 233

现在 fetcher こころざし

[2020-05-02T10:43:46.494] [DEBUG] Handle: Init - [Check torrent status] Starting job
[2020-05-02T10:43:46.494] [INFO] Module: Qbittorrent - Getting torrent list
[2020-05-02T10:43:46.494] [DEBUG] Module: Qbittorrent - GET /api/v2/torrents/info?limit=5&category=JAVClub&filter=paused&sort=completion_on&reverse=true
[2020-05-02T10:43:46.494] [DEBUG] Module: Qbittorrent - GET data:  {
  method: 'GET',
  headers: { Cookie: 'SID=DbuXc2TO8HDajgFE2edemARvVJ48G7W8' }
}
[2020-05-02T10:43:46.499] [DEBUG] Module: Qbittorrent - POST response body Response {
  size: 0,
  timeout: 0,
  [Symbol(Body internals)]: {
    body: PassThrough {
      _readableState: [ReadableState],
      readable: true,
      _events: [Object: null prototype],
      _eventsCount: 2,
      _maxListeners: undefined,
      _writableState: [WritableState],
      writable: false,
      allowHalfOpen: true,
      _transformState: [Object],
      [Symbol(kCapture)]: false
    },
    disturbed: false,
    error: null
  },
  [Symbol(Response internals)]: {
    url: 'http://qbittorrent:8585/api/v2/torrents/createCategory',
    status: 409,
    statusText: 'Conflict',
    headers: Headers { [Symbol(map)]: [Object: null prototype] },
    counter: 0
  }
}
[2020-05-02T10:43:46.499] [INFO] Pull: Init - [Download queue] Job finished, setting timer
[2020-05-02T10:43:46.500] [DEBUG] Module: Qbittorrent - GET response body []
[2020-05-02T10:43:46.500] [INFO] Handle: Init - [Check torrent status] Job finished, setting timer

core こころざし

[2020-05-02T18:13:11.480] [INFO] Stack - Stack created
[2020-05-02T18:13:11.500] [DEBUG] Importer: Main - Config: [ { driveId: 1, interval: 36000000, doFull: true } ]
[2020-05-02T18:13:11.500] [INFO] Stack - Creating Instance 1
[2020-05-02T18:13:11.502] [INFO] API: Main - JAVClub core is listening on port 3000!
[2020-05-02T18:13:11.604] [DEBUG] Stack - RowDataPacket {
  id: 1,
  name: '1',
  driverType: 'gd',
  driverData: '{"oAuth":{"client_id":"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx","client_secret":"xxxxxxxxxxxxxxxxxxxxx","redirect_uri":"urn:ietf:wg:oauth:2.0:oob","token":{"access_token":"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx","refresh_token":"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx","scope":"https://www.googleapis.com/auth/drive","token_type":"Bearer","expiry_date":1583679345619}},"drive":{"driveId":"xxxxxxxxxxx"},"encryption":{"secret":"xxxxxxxxxxxxxx","server":"https://mv-gd.msx.workers.dev"}}',
  isEnable: 1,
  createTime: '1588363401',
  updateTime: '1588363401'
}
[2020-05-02T18:13:11.606] [DEBUG] Driver[1]: Google Drive - Token expiry date 1583679345619
[2020-05-02T18:13:11.606] [INFO] Driver[1]: Google Drive - Refreshing access token
(node:1) [google-auth-library:DEP007] DeprecationWarning: The `refreshAccessToken` method has been deprecated, and will be removed in the 3.0 release of google-auth-library. Please use the `getRequestHeaders` method instead.
[2020-05-02T18:13:11.765] [INFO] Driver[1]: Google Drive - Got access token
[2020-05-02T18:13:11.766] [DEBUG] Driver[1]: Google Drive - {
  access_token: 'xxxxxxxxxxxxxxxxxxxxxxxxxxxxx',
  scope: 'https://www.googleapis.com/auth/drive',
  token_type: 'Bearer',
  expiry_date: 1588417990765,
  refresh_token: 'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx'
}
[2020-05-02T18:13:11.766] [INFO] Importer: GD 1 - Got drive instance
[2020-05-02T18:13:11.774] [INFO] Importer: Main - [1] Ready in 32 seconds
[2020-05-02T18:13:43.777] [INFO] Importer: Main - [1] Starting first time import process
[2020-05-02T18:13:43.778] [INFO] Importer: GD 1 - Starting process of import, full = true
[2020-05-02T18:13:43.778] [INFO] Driver[1]: Google Drive - Getting full file list of keyword name='info.json'
[2020-05-02T18:13:43.779] [DEBUG] Driver[1]: Google Drive - Getting page 1
[2020-05-02T18:13:44.102] [INFO] Driver[1]: Google Drive - Got 0 files' metadatas
[2020-05-02T18:13:44.102] [INFO] Importer: GD 1 - Got info.json file list
[2020-05-02T18:13:44.102] [INFO] Importer: GD 1 - All Promise settled
[2020-05-02T18:13:44.102] [INFO] Importer: Main - [1] First time import process fininshed
[2020-05-02T18:13:44.102] [DEBUG] Importer: Main - [1] Cron set, 36000000ms
[2020-05-02T18:18:52.141] [DEBUG] Module: Cache - [api_checktoken_sjdkfgho9we84yt98w7yhtguierhbgu93oh578gwijhgnwo5] Cache missed, creating one
[2020-05-02T18:18:52.142] [DEBUG] Module: User - Checking token sjdkfgho9we84yt98w7yhtguierhbgu93oh578gwijhgnwo5
[2020-05-02T18:18:52.166] [DEBUG] API: Main - [UID: 1] GET /api/auth/check
[2020-05-02T18:18:52.310] [DEBUG] API: Main - [UID: 1] GET /api/statistic/getData
[2020-05-02T18:18:52.311] [DEBUG] Module: Cache - [api_statistic] Cache missed, creating one
[2020-05-02T18:19:10.566] [DEBUG] Module: Cache - Expired cache api_statistic cleared
[2020-05-02T18:20:10.567] [DEBUG] Module: Cache - Expired cache api_checktoken_sjdkfgho9we84yt98w7yhtguierhbgu93oh578gwijhgnwo5 cleared

わが觉得わが需要じゅようとう几天さいゆうぼつ有数ゆうすうすえりょう

@monsterxcn monsterxcn changed the title 希望きぼうさら详细いちてんてき Workers & GoogleDrive 配置はいち描述 希望きぼうさら详细いちてんてき Workers & Fetcher 配置はいち描述 May 2, 2020
@LynMoe
Copy link
Contributor

LynMoe commented May 2, 2020

Unknown database 'javclub' うつしとくてい明白めいはくりょうてき吧...

かずすえてき话你就等fetcher处理かんだい一个种子然后把sync录里めんてき所有しょゆう东西じょう传到网盘さと就可以了

@monsterxcn
Copy link
Author

monsterxcn commented May 4, 2020

かずすえ库的问题わがやめ经检查了,个找いたかずすえ库应该是ぜん启动てき时候ぼつゆうさき启动 lemp ,にちこころざし也记录了わがぼつ删。きさきらいわがきよしそらこころざしおもしん编排りょう容器ようき,core こころざしちゅうぼつ有数ゆうすうすえ库的报错りょう。现在すうすえ库是ぼつ问题てきりょうただし fetcher 对 http://qbittorrent:8585/api/v2/torrents/createCategory 发起请求てき响应いちちょく 409 错误。fetcher/tmp てき downloads sync 录下无内容ないよう。fetcher てきこころざし内容ないよう如下:

2020-05-04T03:14:33.511655019Z [2020-05-04T03:14:33.511] [DEBUG] Handle: Init - [Check torrent status] Starting job
2020-05-04T03:14:33.511721393Z [2020-05-04T03:14:33.511] [INFO] Module: Qbittorrent - Getting torrent list
2020-05-04T03:14:33.511946559Z [2020-05-04T03:14:33.511] [DEBUG] Module: Qbittorrent - GET /api/v2/torrents/info?limit=5&category=JAVClub&filter=paused&sort=completion_on&reverse=true
2020-05-04T03:14:33.512026522Z [2020-05-04T03:14:33.511] [DEBUG] Module: Qbittorrent - GET data:  {
2020-05-04T03:14:33.512043878Z   method: 'GET',
2020-05-04T03:14:33.512048181Z   headers: { Cookie: 'SID=RLNLgyGTTFfwgbhrwK1mxm/WD8o520p1' }
2020-05-04T03:14:33.512051822Z }
2020-05-04T03:14:33.512673306Z [2020-05-04T03:14:33.512] [DEBUG] Pull: Init - [Download queue] Starting job
2020-05-04T03:14:33.512932456Z [2020-05-04T03:14:33.512] [INFO] Module: Qbittorrent - Adding category JAVClub
2020-05-04T03:14:33.512945841Z [2020-05-04T03:14:33.512] [DEBUG] Module: Qbittorrent - POST /api/v2/torrents/createCategory
2020-05-04T03:14:33.512949872Z [2020-05-04T03:14:33.512] [DEBUG] Module: Qbittorrent - POST data:  {
2020-05-04T03:14:33.512953383Z   method: 'POST',
2020-05-04T03:14:33.512956633Z   body: URLSearchParams { 'category' => 'JAVClub', 'savePath' => 'JAVClub' },
2020-05-04T03:14:33.512960156Z   headers: { Cookie: 'SID=RLNLgyGTTFfwgbhrwK1mxm/WD8o520p1' }
2020-05-04T03:14:33.512963567Z }
2020-05-04T03:14:33.514702086Z [2020-05-04T03:14:33.514] [DEBUG] Module: Qbittorrent - GET response body []
2020-05-04T03:14:33.514733031Z [2020-05-04T03:14:33.514] [INFO] Handle: Init - [Check torrent status] Job finished, setting timer
2020-05-04T03:14:33.515114865Z [2020-05-04T03:14:33.514] [DEBUG] Module: Qbittorrent - POST response body Response {
2020-05-04T03:14:33.515130150Z   size: 0,
2020-05-04T03:14:33.515133741Z   timeout: 0,
2020-05-04T03:14:33.515136768Z   [Symbol(Body internals)]: {
2020-05-04T03:14:33.515139857Z     body: PassThrough {
2020-05-04T03:14:33.515143100Z       _readableState: [ReadableState],
2020-05-04T03:14:33.515146238Z       readable: true,
2020-05-04T03:14:33.515149235Z       _events: [Object: null prototype],
2020-05-04T03:14:33.515152063Z       _eventsCount: 2,
2020-05-04T03:14:33.515155032Z       _maxListeners: undefined,
2020-05-04T03:14:33.515157889Z       _writableState: [WritableState],
2020-05-04T03:14:33.515160789Z       writable: false,
2020-05-04T03:14:33.515163850Z       allowHalfOpen: true,
2020-05-04T03:14:33.515166993Z       _transformState: [Object],
2020-05-04T03:14:33.515183965Z       [Symbol(kCapture)]: false
2020-05-04T03:14:33.515186803Z     },
2020-05-04T03:14:33.515189282Z     disturbed: false,
2020-05-04T03:14:33.515191784Z     error: null
2020-05-04T03:14:33.515194301Z   },
2020-05-04T03:14:33.515196867Z   [Symbol(Response internals)]: {
2020-05-04T03:14:33.515199464Z     url: 'http://qbittorrent:8585/api/v2/torrents/createCategory',
2020-05-04T03:14:33.515202315Z     status: 409,
2020-05-04T03:14:33.515204848Z     statusText: 'Conflict',
2020-05-04T03:14:33.515207521Z     headers: Headers { [Symbol(map)]: [Object: null prototype] },
2020-05-04T03:14:33.515210292Z     counter: 0
2020-05-04T03:14:33.515212858Z   }
2020-05-04T03:14:33.515215354Z }
2020-05-04T03:14:33.515219700Z [2020-05-04T03:14:33.515] [INFO] Pull: Init - [Download queue] Job finished, setting timer

不知ふちどうてき容器ようき网络桥接ゆう关,此时てき fetcher qbittorrent どう存在そんざいjavclub_lemp_default javclub_fetcher_default 网络ちゅう, docker network 如下:

root@msvultr2020:~# docker network ls
NETWORK ID          NAME                      DRIVER              SCOPE
a5eb30cf6dee        bridge                    bridge              local
732bcdad4481        host                      host                local
4f07216d6714        javclub_fetcher_default   bridge              local
e67609173e19        javclub_lemp_default      bridge              local
3a4e5788bcb4        none                      null                local
root@msvultr2020:~# docker network inspect javclub_fetcher_default
[
    {
        "Name": "javclub_fetcher_default",
        "Id": "4f07216d671467e46919eb16d5b21981e38afc0d8d070c7ea92ee6c7f7b80f4d",
        "Created": "2020-05-01T11:51:27.505918288Z",
        "Scope": "local",
        "Driver": "bridge",
        "EnableIPv6": false,
        "IPAM": {
            "Driver": "default",
            "Options": null,
            "Config": [
                {
                    "Subnet": "172.18.0.0/16",
                    "Gateway": "172.18.0.1"
                }
            ]
        },
        "Internal": false,
        "Attachable": false,
        "Ingress": false,
        "ConfigFrom": {
            "Network": ""
        },
        "ConfigOnly": false,
        "Containers": {
            "186de75ba4d8ad8be838c7abfa1635ffd870928ab25196ea9aec7b4f358c54f9": {
                "Name": "fetcher",
                "EndpointID": "aba7bd94f378ef481043ac75b2acede8b1109e50767aa448f7ef54b02959522f",
                "MacAddress": "02:42:ac:12:00:03",
                "IPv4Address": "172.18.0.3/16",
                "IPv6Address": ""
            },
            "8829e3f2dcc97a77fd415a9fbe892ce25ca0b5302b4292754a026bae2607a769": {
                "Name": "qbittorrent",
                "EndpointID": "d6b9e07b5e440d4ad1f9a5636f8b57d61f9f52734b5a40febf90fc0b3e520df7",
                "MacAddress": "02:42:ac:12:00:02",
                "IPv4Address": "172.18.0.2/16",
                "IPv6Address": ""
            }
        },
        "Options": {},
        "Labels": {}
    }
]
root@msvultr2020:~# docker network inspect javclub_lemp_default
[
    {
        "Name": "javclub_lemp_default",
        "Id": "e67609173e191ed009190f3692c1eb9ec2377492c009fe3440fc709df97fed3a",
        "Created": "2020-05-01T12:25:23.425133701Z",
        "Scope": "local",
        "Driver": "bridge",
        "EnableIPv6": false,
        "IPAM": {
            "Driver": "default",
            "Options": null,
            "Config": [
                {
                    "Subnet": "172.19.0.0/16",
                    "Gateway": "172.19.0.1"
                }
            ]
        },
        "Internal": false,
        "Attachable": true,
        "Ingress": false,
        "ConfigFrom": {
            "Network": ""
        },
        "ConfigOnly": false,
        "Containers": {
            "0920253567cad31a1a4538b3f392813d2385daaf75b0c7af2596963e79895f4a": {
                "Name": "javclub_lemp_php-fpm_1",
                "EndpointID": "e3e28dbc001c1e2223374fdf24c034aed5ad944d350a0551c1e97dd914d91266",
                "MacAddress": "02:42:ac:13:00:06",
                "IPv4Address": "172.19.0.6/16",
                "IPv6Address": ""
            },
            "186de75ba4d8ad8be838c7abfa1635ffd870928ab25196ea9aec7b4f358c54f9": {
                "Name": "fetcher",
                "EndpointID": "e66fdb9adcadc36b7d93b0a08b78403d6dd210c80a8658470a663c66692a19ba",
                "MacAddress": "02:42:ac:13:00:02",
                "IPv4Address": "172.19.0.2/16",
                "IPv6Address": ""
            },
            "41556a6d0a3e53e37c0923f6089f42088e6892fb58f940f179641ba49b63cdef": {
                "Name": "javclub_lemp_nginx_1",
                "EndpointID": "abf62e1f5ffeb53363814fd7a9cb988eb01b715d2dfb63c0fd8b65bf7b9e8445",
                "MacAddress": "02:42:ac:13:00:07",
                "IPv4Address": "172.19.0.7/16",
                "IPv6Address": ""
            },
            "607adedbb599b34c4c678a1e02bbd8efb051cd571d605c1a85d71205acfb9bfa": {
                "Name": "javclub_lemp_redis_1",
                "EndpointID": "a0d97fe555af900c1debcc51992b15fb5d3b9215b0b8fec2c9d3687282eddc86",
                "MacAddress": "02:42:ac:13:00:08",
                "IPv4Address": "172.19.0.8/16",
                "IPv6Address": ""
            },
            "8829e3f2dcc97a77fd415a9fbe892ce25ca0b5302b4292754a026bae2607a769": {
                "Name": "qbittorrent",
                "EndpointID": "bd5dc1e32df48cb046d52ce9d726a616c406011e09fdc900cc643bab3c5eb1e2",
                "MacAddress": "02:42:ac:13:00:04",
                "IPv4Address": "172.19.0.4/16",
                "IPv6Address": ""
            },
            "962e1c888897ac6bef0327203875820a2ab2e2e091ecc839a5146c28d338ae9a": {
                "Name": "javclub_lemp_mysql_1",
                "EndpointID": "9ae7b1f317bfabbe7b4afcfbaa534de54b6af7e9f51ae3d7a4ec614b68fca93f",
                "MacAddress": "02:42:ac:13:00:05",
                "IPv4Address": "172.19.0.5/16",
                "IPv6Address": ""
            },
            "c45050da45070bebea7d089812db4ebef6290dd7f15642876fbd7e0902febe5d": {
                "Name": "javclub_lemp_phpmyadmin_1",
                "EndpointID": "eeeb39627228ebfcb1826d21c4a98f1a39084fa21f9a5e27c3b8ab22c37c013b",
                "MacAddress": "02:42:ac:13:00:09",
                "IPv4Address": "172.19.0.9/16",
                "IPv6Address": ""
            },
            "e928dcbda9fad17296a33ba54c6c1a697a01631fd10a788765158c76cc0f6b50": {
                "Name": "javclub_core_core_1",
                "EndpointID": "6d1934faa8bf7677ac072f90768f7c116a277c3b820146b247d8470a1bad9ec8",
                "MacAddress": "02:42:ac:13:00:03",
                "IPv4Address": "172.19.0.3/16",
                "IPv6Address": ""
            }
        },
        "Options": {},
        "Labels": {
            "com.docker.compose.network": "default",
            "com.docker.compose.project": "javclub_lemp",
            "com.docker.compose.version": "1.25.4"
        }
    }
]

わが尝试はた fetcher qbittorrent 容器ようきjavclub_lemp_default 网络ちゅうへず离,让他俩只存在そんざいjavclub_fetcher_default 网络ちゅうただしきゅうしつ败,刚开はじめにちこころざし报了いち个 409 ,きさきらい 403 响应,fetcher こころざし如下:

[2020-05-04T03:34:32.528] [DEBUG] Handle: Init - [Check torrent status] Starting job
[2020-05-04T03:34:32.534] [INFO] Module: Qbittorrent - Getting torrent list
[2020-05-04T03:34:32.534] [DEBUG] Module: Qbittorrent - GET /api/v2/torrents/info?limit=5&category=JAVClub&filter=paused&sort=completion_on&reverse=true
[2020-05-04T03:34:32.575] [DEBUG] Pull: Init - [Download queue] Starting job
[2020-05-04T03:34:32.576] [INFO] Module: Qbittorrent - Adding category JAVClub
[2020-05-04T03:34:32.577] [DEBUG] Module: Qbittorrent - POST /api/v2/torrents/createCategory
[2020-05-04T03:34:32.630] [DEBUG] Pull: Init - Remote list [
  { driver: 'OneJAV', url: 'https://onejav.com/new/' },
  { driver: 'OneJAV', url: 'https://onejav.com/popular/' },
  { driver: 'OneJAV', url: 'https://onejav.com/random/' }
]
[2020-05-04T03:34:32.859] [DEBUG] Module: Qbittorrent - Auth body: Ok.
[2020-05-04T03:34:32.860] [INFO] Module: Qbittorrent - Cookie: SID=Ys3jgOC0uEuC/Kzgz3mtVbQt4Rr0HQkP
[2020-05-04T03:34:32.860] [DEBUG] Module: Qbittorrent - GET data:  {
  method: 'GET',
  headers: { Cookie: 'SID=Ys3jgOC0uEuC/Kzgz3mtVbQt4Rr0HQkP' }
}
[2020-05-04T03:34:32.862] [DEBUG] Module: Qbittorrent - Auth body: Ok.
[2020-05-04T03:34:32.863] [INFO] Module: Qbittorrent - Cookie: SID=TOhsOgyGUOfPB+Ra0qvdyw57AKuuIW01
[2020-05-04T03:34:32.863] [DEBUG] Module: Qbittorrent - POST data:  {
  method: 'POST',
  body: URLSearchParams { 'category' => 'JAVClub', 'savePath' => 'JAVClub' },
  headers: { Cookie: 'SID=TOhsOgyGUOfPB+Ra0qvdyw57AKuuIW01' }
}
[2020-05-04T03:34:32.867] [DEBUG] Module: Qbittorrent - GET response body []
[2020-05-04T03:34:32.868] [INFO] Handle: Init - [Check torrent status] Job finished, setting timer
[2020-05-04T03:34:32.869] [DEBUG] Module: Qbittorrent - POST response body Response {
  size: 0,
  timeout: 0,
  [Symbol(Body internals)]: {
    body: PassThrough {
      _readableState: [ReadableState],
      readable: true,
      _events: [Object: null prototype],
      _eventsCount: 2,
      _maxListeners: undefined,
      _writableState: [WritableState],
      writable: false,
      allowHalfOpen: true,
      _transformState: [Object],
      [Symbol(kCapture)]: false
    },
    disturbed: false,
    error: null
  },
  [Symbol(Response internals)]: {
    url: 'http://qbittorrent:8585/api/v2/torrents/createCategory',
    status: 409,
    statusText: 'Conflict',
    headers: Headers { [Symbol(map)]: [Object: null prototype] },
    counter: 0
  }
}
[2020-05-04T03:34:32.870] [INFO] Pull: Init - [Download queue] Job finished, setting timer
[2020-05-04T03:35:32.915] [DEBUG] Handle: Init - [Check torrent status] Starting job
[2020-05-04T03:35:32.915] [INFO] Module: Qbittorrent - Getting torrent list
[2020-05-04T03:35:32.915] [DEBUG] Module: Qbittorrent - GET /api/v2/torrents/info?limit=5&category=JAVClub&filter=paused&sort=completion_on&reverse=true
[2020-05-04T03:35:32.916] [DEBUG] Module: Qbittorrent - GET data:  {
  method: 'GET',
  headers: { Cookie: 'SID=TOhsOgyGUOfPB+Ra0qvdyw57AKuuIW01' }
}
[2020-05-04T03:35:32.917] [DEBUG] Pull: Init - [Download queue] Starting job
[2020-05-04T03:35:32.917] [INFO] Module: Qbittorrent - Adding category JAVClub
[2020-05-04T03:35:32.917] [DEBUG] Module: Qbittorrent - POST /api/v2/torrents/createCategory
[2020-05-04T03:35:32.917] [DEBUG] Module: Qbittorrent - POST data:  {
  method: 'POST',
  body: URLSearchParams { 'category' => 'JAVClub', 'savePath' => 'JAVClub' },
  headers: { Cookie: 'SID=TOhsOgyGUOfPB+Ra0qvdyw57AKuuIW01' }
}
[2020-05-04T03:35:32.921] [ERROR] Handle: Init - [Check torrent status] Job threw an error FetchError: invalid json response body at http://qbittorrent:8585/api/v2/torrents/info?limit=5&category=JAVClub&filter=paused&sort=completion_on&reverse=true reason: Unexpected end of JSON input
    at /usr/app/node_modules/node-fetch/lib/index.js:272:32
    at processTicksAndRejections (internal/process/task_queues.js:97:5)
    at async Qbittorrent.sendRequest (/usr/app/src/module/qbittorrent.js:57:31)
    at async Qbittorrent.getTorrentList (/usr/app/src/module/qbittorrent.js:69:24)
    at async process (/usr/app/src/handle/init.js:25:25)
    at async /usr/app/src/handle/init.js:128:5
    at async runAndSetInterval (/usr/app/src/handle/init.js:13:9) {
  message: 'invalid json response body at http://qbittorrent:8585/api/v2/torrents/info?limit=5&category=JAVClub&filter=paused&sort=completion_on&reverse=true reason: Unexpected end of JSON input',
  type: 'invalid-json'
}
[2020-05-04T03:35:32.922] [INFO] Handle: Init - [Check torrent status] Job finished, setting timer
[2020-05-04T03:35:32.915] [DEBUG] Handle: Init - [Check torrent status] Starting job
[2020-05-04T03:35:32.915] [INFO] Module: Qbittorrent - Getting torrent list
[2020-05-04T03:35:32.915] [DEBUG] Module: Qbittorrent - GET /api/v2/torrents/info?limit=5&category=JAVClub&filter=paused&sort=completion_on&reverse=true
[2020-05-04T03:35:32.916] [DEBUG] Module: Qbittorrent - GET data:  {
  method: 'GET',
  headers: { Cookie: 'SID=TOhsOgyGUOfPB+Ra0qvdyw57AKuuIW01' }
}
[2020-05-04T03:35:32.917] [DEBUG] Pull: Init - [Download queue] Starting job
[2020-05-04T03:35:32.917] [INFO] Module: Qbittorrent - Adding category JAVClub
[2020-05-04T03:35:32.917] [DEBUG] Module: Qbittorrent - POST /api/v2/torrents/createCategory
[2020-05-04T03:35:32.917] [DEBUG] Module: Qbittorrent - POST data:  {
  method: 'POST',
  body: URLSearchParams { 'category' => 'JAVClub', 'savePath' => 'JAVClub' },
  headers: { Cookie: 'SID=TOhsOgyGUOfPB+Ra0qvdyw57AKuuIW01' }
}
[2020-05-04T03:35:32.921] [ERROR] Handle: Init - [Check torrent status] Job threw an error FetchError: invalid json response body at http://qbittorrent:8585/api/v2/torrents/info?limit=5&category=JAVClub&filter=paused&sort=completion_on&reverse=true reason: Unexpected end of JSON input
    at /usr/app/node_modules/node-fetch/lib/index.js:272:32
    at processTicksAndRejections (internal/process/task_queues.js:97:5)
    at async Qbittorrent.sendRequest (/usr/app/src/module/qbittorrent.js:57:31)
    at async Qbittorrent.getTorrentList (/usr/app/src/module/qbittorrent.js:69:24)
    at async process (/usr/app/src/handle/init.js:25:25)
    at async /usr/app/src/handle/init.js:128:5
    at async runAndSetInterval (/usr/app/src/handle/init.js:13:9) {
  message: 'invalid json response body at http://qbittorrent:8585/api/v2/torrents/info?limit=5&category=JAVClub&filter=paused&sort=completion_on&reverse=true reason: Unexpected end of JSON input',
  type: 'invalid-json'
}
[2020-05-04T03:35:32.922] [INFO] Handle: Init - [Check torrent status] Job finished, setting timer
[2020-05-04T03:35:32.922] [DEBUG] Module: Qbittorrent - POST response body Response {
  size: 0,
  timeout: 0,
  [Symbol(Body internals)]: {
    body: PassThrough {
      _readableState: [ReadableState],
      readable: true,
      _events: [Object: null prototype],
      _eventsCount: 2,
      _maxListeners: undefined,
      _writableState: [WritableState],
      writable: false,
      allowHalfOpen: true,
      _transformState: [Object],
      [Symbol(kCapture)]: false
    },
    disturbed: false,
    error: null
  },
  [Symbol(Response internals)]: {
    url: 'http://qbittorrent:8585/api/v2/torrents/createCategory',
    status: 403,
    statusText: 'Forbidden',
    headers: Headers { [Symbol(map)]: [Object: null prototype] },
    counter: 0
  }
}
[2020-05-04T03:35:32.923] [INFO] Pull: Init - [Download queue] Job finished, setting timer

不知ふちどう哪里てき问题...

@monsterxcn monsterxcn reopened this May 4, 2020
@LynMoe
Copy link
Contributor

LynMoe commented May 4, 2020

いん为没ほう判断はんだんいややめ存在そんざいぶん类 JAVClub 所以ゆえん每次まいじ都会とかい尝试创建いち个分类, 如果やめ存在そんざい就会かえしかい 409, 这个不用ふようざい
以及 fetcher/qBittorrent core 完全かんぜんぼつゆう关系てき, 以当两个东西らい, 需要じゅようざい同一どういつ个网络里めん

こころざしてき话应该是 qBittorrent 端的たんてきしょう应不符合ふごう预期, 以检查一 qBittorrent さとめん存在そんざい JAVClub 这个ぶん类以及贴いち你拉取的とりてき qBittorrent 版本はんぽん


发现ぶん档中りょう一个很重要的东西, 以加じょうさい试试

{
            "driver": "RSS",
            "type": "MT",
            "url": "https://pt.m-team.cc/torrentrss.php?https=1&rows=30&cat410=1&isize=1&search=-&search_mode=1&linktype=dl&passkey=",
            "interval": 300
}

interval 轮询のべ时, 以秒为单

@LynMoe
Copy link
Contributor

LynMoe commented May 4, 2020

参照さんしょう JAVClub/fetcher@2aa57c0

いん为 qBittorrent 还在快速かいそく迭代, 所以ゆえん API ざい疯狂变动, 为了避免あさ烦这さと钦定 4.2.1 版本はんぽん(そく web API 版本はんぽん为 2.4 てき版本はんぽん), 请升/くだ级到指定してい版本はんぽん使用しよう

如果使用しよう Docker 部署ぶしょ以拉最新さいしんてき docker-compose.yaml

@monsterxcn
Copy link
Author

これぜんひしげ取的とりてき qbittorrent 最新さいしん版本はんぽんてき

root@msvultr2020:~# docker image ls
REPOSITORY                TAG                 IMAGE ID            CREATED             SIZE
linuxserver/qbittorrent   latest              c77db2e3af22        5 days ago          333MB

检查いち qBittorrent さとめん存在そんざい JAVClub 这个ぶん

这个ぶん类如はて个叫 JAVClub てきぶんけん夹的话,ぼつゆう


nice! 换了版本はんぽん现在おこりらいぼつ什么问题りょう。fetcher こころざしちゅうただゆう 409 りょう

@LynMoe
Copy link
Contributor

LynMoe commented May 4, 2020

こうてきよう成功せいこう部署ぶしょてき话还请发个喜报()让我知道ともみち这玩儿能ようhhhh

@monsterxcn
Copy link
Author

かいてき 嘿嘿 (怎么かい不能ふのうよう

@LynMoe LynMoe added the good first issue Good for newcomers label Jul 25, 2020
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
good first issue Good for newcomers
Projects
None yet
Development

No branches or pull requests

2 participants