From 1b6294a14c2ad6a121375513bdaabc5036a09822 Mon Sep 17 00:00:00 2001 From: fengmk2 Date: Sun, 19 Jan 2025 23:09:38 +0800 Subject: [PATCH 1/4] feat: support cjs and esm both by tshy BREAKING CHANGE: drop Node.js < 18.19.0 support part of https://github.com/eggjs/egg/issues/3644 https://github.com/eggjs/egg/issues/5257 --- .eslintignore | 1 + .eslintrc | 5 +- .github/workflows/nodejs.yml | 2 +- .gitignore | 11 +- README.md | 86 +-- agent.js | 7 - app.js | 7 - config/config.default.js | 58 -- example/hello/app/router.ts | 12 + example/hello/config/config.default.ts | 3 + example/hello/config/plugin.ts | 6 + example/hello/package.json | 4 + example/hello/run/agent_config.json | 470 +++++++++++++++ example/hello/run/agent_config_meta.json | 259 +++++++++ example/hello/run/agent_timing_95228.json | 362 ++++++++++++ example/hello/run/application_config.json | 499 ++++++++++++++++ .../hello/run/application_config_meta.json | 259 +++++++++ .../hello/run/application_timing_95243.json | 546 ++++++++++++++++++ example/hello/run/router.json | 14 + example/hello/start.ts | 12 + example/hello/tsconfig.json | 10 + example/hello/typings/index.d.ts | 4 + index.d.ts | 25 - lib/redis.js | 73 --- package.json | 112 ++-- src/agent.ts | 3 + src/app.ts | 3 + src/config/config.default.ts | 111 ++++ src/index.ts | 1 + src/lib/redis.ts | 90 +++ src/types.ts | 14 + src/typings/index.d.ts | 4 + .../redisapp-customize/app/controller/home.js | 8 +- .../app/controller/home.js | 8 +- .../app/controller/home.js | 8 +- .../app/controller/home.js | 8 +- .../redisapp-weakdependent/config/config.js | 2 - .../apps/redisapp/app/controller/home.js | 8 +- .../redisclusterapp/app/controller/home.js | 8 +- .../apps/redispathapp/app/controller/home.js | 8 +- .../redissentinelapp/app/controller/home.js | 8 +- .../redisapp-ts/app/controller/home.ts | 30 +- test/fixtures/apps/ts-multi/tsconfig.json | 22 +- .../ts/redisapp-ts/app/controller/home.ts | 14 +- .../apps/ts/redisapp-ts/tsconfig.json | 10 + test/fixtures/apps/ts/tsconfig.json | 16 - test/{redis.test.js => redis.test.ts} | 74 +-- tsconfig.json | 10 + 48 files changed, 2937 insertions(+), 378 deletions(-) delete mode 100644 agent.js delete mode 100644 app.js delete mode 100644 config/config.default.js create mode 100644 example/hello/app/router.ts create mode 100644 example/hello/config/config.default.ts create mode 100644 example/hello/config/plugin.ts create mode 100644 example/hello/package.json create mode 100644 example/hello/run/agent_config.json create mode 100644 example/hello/run/agent_config_meta.json create mode 100644 example/hello/run/agent_timing_95228.json create mode 100644 example/hello/run/application_config.json create mode 100644 example/hello/run/application_config_meta.json create mode 100644 example/hello/run/application_timing_95243.json create mode 100644 example/hello/run/router.json create mode 100644 example/hello/start.ts create mode 100644 example/hello/tsconfig.json create mode 100644 example/hello/typings/index.d.ts delete mode 100644 index.d.ts delete mode 100644 lib/redis.js create mode 100644 src/agent.ts create mode 100644 src/app.ts create mode 100644 src/config/config.default.ts create mode 100644 src/index.ts create mode 100644 src/lib/redis.ts create mode 100644 src/types.ts create mode 100644 src/typings/index.d.ts create mode 100644 test/fixtures/apps/ts/redisapp-ts/tsconfig.json delete mode 100644 test/fixtures/apps/ts/tsconfig.json rename test/{redis.test.js => redis.test.ts} (70%) create mode 100644 tsconfig.json diff --git a/.eslintignore b/.eslintignore index a24e501..618ef2b 100644 --- a/.eslintignore +++ b/.eslintignore @@ -1,2 +1,3 @@ test/fixtures coverage +__snapshots__ diff --git a/.eslintrc b/.eslintrc index c799fe5..9bcdb46 100644 --- a/.eslintrc +++ b/.eslintrc @@ -1,3 +1,6 @@ { - "extends": "eslint-config-egg" + "extends": [ + "eslint-config-egg/typescript", + "eslint-config-egg/lib/rules/enforce-node-prefix" + ] } diff --git a/.github/workflows/nodejs.yml b/.github/workflows/nodejs.yml index b3c2981..25bb2a4 100644 --- a/.github/workflows/nodejs.yml +++ b/.github/workflows/nodejs.yml @@ -11,6 +11,6 @@ jobs: name: Node.js uses: node-modules/github-actions/.github/workflows/node-test-mysql.yml@master with: - version: '16, 18, 20, 22' + version: '18.19.0, 18, 20, 22' secrets: CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }} diff --git a/.gitignore b/.gitignore index 6575f21..3f19017 100644 --- a/.gitignore +++ b/.gitignore @@ -2,8 +2,11 @@ logs/ npm-debug.log node_modules/ coverage/ -.idea/ -run/ +test/fixtures/**/run .DS_Store -*.swp -.nyc_output/ +.tshy* +.eslintcache +dist +package-lock.json +.package-lock.json +test/fixtures/**/*.d.ts diff --git a/README.md b/README.md index 5dd48ea..21c0d9d 100644 --- a/README.md +++ b/README.md @@ -1,34 +1,35 @@ -# egg-redis +# @eggjs/redis [![NPM version][npm-image]][npm-url] [![Node.js CI](https://github.com/eggjs/redis/actions/workflows/nodejs.yml/badge.svg)](https://github.com/eggjs/redis/actions/workflows/nodejs.yml) [![Test coverage][codecov-image]][codecov-url] [![Known Vulnerabilities][snyk-image]][snyk-url] [![npm download][download-image]][download-url] -[![Node.js Version](https://img.shields.io/node/v/egg-redis.svg?style=flat)](https://nodejs.org/en/download/) +[![Node.js Version](https://img.shields.io/node/v/@eggjs/redis.svg?style=flat)](https://nodejs.org/en/download/) [![PRs Welcome](https://img.shields.io/badge/PRs-welcome-brightgreen.svg?style=flat-square)](https://makeapullrequest.com) ![CodeRabbit Pull Request Reviews](https://img.shields.io/coderabbit/prs/github/eggjs/redis) -[npm-image]: https://img.shields.io/npm/v/egg-redis.svg?style=flat-square -[npm-url]: https://npmjs.org/package/egg-redis +[npm-image]: https://img.shields.io/npm/v/@eggjs/redis.svg?style=flat-square +[npm-url]: https://npmjs.org/package/@eggjs/redis [codecov-image]: https://codecov.io/gh/eggjs/redis/branch/master/graph/badge.svg [codecov-url]: https://codecov.io/gh/eggjs/redis -[snyk-image]: https://snyk.io/test/npm/egg-redis/badge.svg?style=flat-square -[snyk-url]: https://snyk.io/test/npm/egg-redis -[download-image]: https://img.shields.io/npm/dm/egg-redis.svg?style=flat-square -[download-url]: https://npmjs.org/package/egg-redis +[snyk-image]: https://snyk.io/test/npm/@eggjs/redis/badge.svg?style=flat-square +[snyk-url]: https://snyk.io/test/npm/@eggjs/redis +[download-image]: https://img.shields.io/npm/dm/@eggjs/redis.svg?style=flat-square +[download-url]: https://npmjs.org/package/@eggjs/redis -Redis client(support redis protocol) based on ioredis for egg framework +Valkey / Redis client (support [redis protocol](https://redis.io/docs/latest/develop/reference/protocol-spec/)) based on iovalkey for egg framework ## Install ```bash -npm i egg-redis --save +npm i egg-redis ``` -redis Plugin for egg, support egg application access to redis. +Valkey / Redis Plugin for egg, support egg application access to Valkey / Redis Service. -This plugin based on [ioredis](https://github.com/luin/ioredis), if you want to know specific usage, you should refer to the document of [ioredis](https://github.com/luin/ioredis). +This plugin based on [ioredis](https://github.com/redis/ioredis). +If you want to know specific usage, you should refer to the document of [ioredis](https://github.com/redis/ioredis). ## Configuration @@ -37,7 +38,7 @@ Change `${app_root}/config/plugin.js` to enable redis plugin: ```js exports.redis = { enable: true, - package: 'egg-redis', + package: '@eggjs/redis', }; ``` @@ -82,10 +83,14 @@ config.redis = { ```javascript config.redis = { client: { - sentinels: [{ // Sentinel instances - port: 26379, // Sentinel port - host: '127.0.0.1', // Sentinel host - }], + // Sentinel instances + sentinels: [ + { + port: 26379, // Sentinel port + host: '127.0.0.1', // Sentinel host + }, + // other sentinel instance config + ], name: 'mymaster', // Master name password: 'auth', db: 0 @@ -110,11 +115,12 @@ Because it may be cause security risk, refer: If you want to access redis with no password, use `password: null`. -See [ioredis API Documentation](https://github.com/luin/ioredis/blob/master/API.md#new_Redis) for all available options. +See [ioredis API Documentation](https://github.com/redis/ioredis#basic-usage) for all available options. ### Customize `ioredis` version -`egg-redis` using ioredis@4 now, if you want to use other version of ioredis, you can pass the instance by `config.redis.Redis`: +`@eggjs/redis` using `ioredis@5` now, if you want to use other version of iovalkey or ioredis, +you can pass the instance by `config.redis.Redis`: ```js // config/config.default.js @@ -138,14 +144,14 @@ config.redis = { host: '127.0.0.1', // Redis host password: 'auth', db: 0, - weakDependent: true, // this redis instance won't block app start + weakDependent: true, // the redis instance won't block app start }, } ``` ## Usage -In controller, you can use `app.redis` to get the redis instance, check [ioredis](https://github.com/luin/ioredis#basic-usage) to see how to use. +In controller, you can use `app.redis` to get the redis instance, check [ioredis](https://github.com/redis/ioredis#basic-usage) to see how to use. ```js // app/controller/home.js @@ -190,30 +196,30 @@ Before you start to use Redis Cluster, please checkout the [document](https://re In controller, you also can use `app.redis` to get the redis instance based on Redis Cluster. ```js - // app/config/config.default.js - exports.redis = { - client: { - cluster: true, - nodes: [{ - host: '127.0.0.1', - port: '6379', - family: 'user', - password: 'password', - db: 'db', - }, { - host: '127.0.0.1', - port: '6380', - family: 'user', - password: 'password', - db: 'db', - }] - }, + client: { + cluster: true, + nodes: [ + { + host: '127.0.0.1', + port: '6379', + family: 'user', + password: 'password', + db: 'db', + }, + { + host: '127.0.0.1', + port: '6380', + family: 'user', + password: 'password', + db: 'db', + }, + ], + }, }; // app/controller/home.js - module.exports = app => { return class HomeController extends app.Controller { async index() { diff --git a/agent.js b/agent.js deleted file mode 100644 index 034542e..0000000 --- a/agent.js +++ /dev/null @@ -1,7 +0,0 @@ -'use strict'; - -const redis = require('./lib/redis'); - -module.exports = agent => { - if (agent.config.redis.agent) redis(agent); -}; diff --git a/app.js b/app.js deleted file mode 100644 index d57a816..0000000 --- a/app.js +++ /dev/null @@ -1,7 +0,0 @@ -'use strict'; - -const redis = require('./lib/redis'); - -module.exports = app => { - if (app.config.redis.app) redis(app); -}; diff --git a/config/config.default.js b/config/config.default.js deleted file mode 100644 index 641f3de..0000000 --- a/config/config.default.js +++ /dev/null @@ -1,58 +0,0 @@ -'use strict'; - -exports.redis = { - default: { - }, - app: true, - agent: false, - // redis client will try to use TIME command to detect client is ready or not - // if your redis server not support TIME command, please set this config to false - // see https://redis.io/commands/time - supportTimeCommand: true, - // Redis: require('ioredis'), // customize ioredis version, only set when you needed - - // Single Redis - // client: { - // host: 'host', - // port: 'port', - // family: 'user', - // password: 'password', - // db: 'db', - // }, - - // Cluster Redis - // client: { - // cluster: true, - // nodes: [{ - // host: 'host', - // port: 'port', - // family: 'user', - // password: 'password', - // db: 'db', - // },{ - // host: 'host', - // port: 'port', - // family: 'user', - // password: 'password', - // db: 'db', - // }, - // ]}, - - // Multi Redis - // clients: { - // instance1: { - // host: 'host', - // port: 'port', - // family: 'user', - // password: 'password', - // db: 'db', - // }, - // instance2: { - // host: 'host', - // port: 'port', - // family: 'user', - // password: 'password', - // db: 'db', - // }, - // }, -}; diff --git a/example/hello/app/router.ts b/example/hello/app/router.ts new file mode 100644 index 0000000..3f7682d --- /dev/null +++ b/example/hello/app/router.ts @@ -0,0 +1,12 @@ +import { Application } from 'egg'; + +export default (app: Application) => { + const { router } = app; + + router.get('/', async ctx => { + const redis = app.redis; + await redis.set('foo', 'bar'); + const cacheValue = await redis.get('foo'); + ctx.body = cacheValue; + }); +}; diff --git a/example/hello/config/config.default.ts b/example/hello/config/config.default.ts new file mode 100644 index 0000000..7370c06 --- /dev/null +++ b/example/hello/config/config.default.ts @@ -0,0 +1,3 @@ +export default { + keys: 'bala', +}; diff --git a/example/hello/config/plugin.ts b/example/hello/config/plugin.ts new file mode 100644 index 0000000..17e2689 --- /dev/null +++ b/example/hello/config/plugin.ts @@ -0,0 +1,6 @@ +export default { + redis: { + enable: true, + path: '../../../../..', + }, +}; diff --git a/example/hello/package.json b/example/hello/package.json new file mode 100644 index 0000000..2400d65 --- /dev/null +++ b/example/hello/package.json @@ -0,0 +1,4 @@ +{ + "name": "hello-redis", + "type": "module" +} diff --git a/example/hello/run/agent_config.json b/example/hello/run/agent_config.json new file mode 100644 index 0000000..966d9b9 --- /dev/null +++ b/example/hello/run/agent_config.json @@ -0,0 +1,470 @@ +{ + "config": { + "middleware": [], + "coreMiddleware": [ + "meta", + "siteFile", + "notfound", + "bodyParser", + "overrideMethod" + ], + "session": { + "key": "EGG_SESS", + "maxAge": 86400000, + "autoCommit": true, + "overwrite": true, + "httpOnly": true, + "signed": true, + "rolling": false, + "renew": false, + "encode": "", + "decode": "", + "logValue": true + }, + "security": { + "domainWhiteList": [], + "protocolWhiteList": [], + "defaultMiddleware": [ + "csrf", + "hsts", + "methodnoallow", + "noopen", + "nosniff", + "csp", + "xssProtection", + "xframe", + "dta" + ], + "csrf": { + "enable": true, + "type": "ctoken", + "ignoreJSON": false, + "cookieName": "csrfToken", + "sessionName": "csrfToken", + "headerName": "x-csrf-token", + "bodyName": "_csrf", + "queryName": "_csrf", + "rotateWhenInvalid": false, + "useSession": false, + "supportedRequests": [ + { + "path": {}, + "methods": [ + "POST", + "PATCH", + "DELETE", + "PUT", + "CONNECT" + ] + } + ], + "refererWhiteList": [], + "cookieOptions": { + "signed": false, + "httpOnly": false, + "overwrite": true + } + }, + "xframe": { + "enable": true, + "value": "SAMEORIGIN" + }, + "hsts": { + "enable": false, + "maxAge": 31536000, + "includeSubdomains": false + }, + "methodnoallow": { + "enable": true + }, + "noopen": { + "enable": true + }, + "nosniff": { + "enable": true + }, + "xssProtection": { + "enable": true, + "value": "1; mode=block" + }, + "csp": { + "enable": false, + "policy": {} + }, + "referrerPolicy": { + "enable": false, + "value": "no-referrer-when-downgrade" + }, + "dta": { + "enable": true + }, + "ssrf": {} + }, + "helper": { + "shtml": {} + }, + "jsonp": { + "limit": 50, + "callback": [ + "_callback", + "callback" + ], + "csrf": false + }, + "onerror": { + "errorPageUrl": "", + "appErrorFilter": null, + "templatePath": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-onerror@2.4.0/node_modules/egg-onerror/lib/onerror_page.mustache" + }, + "i18n": { + "defaultLocale": "en_US", + "dirs": [], + "queryField": "locale", + "cookieField": "locale", + "cookieDomain": "", + "cookieMaxAge": "1y", + "localeAlias": {}, + "writeCookie": true + }, + "watcher": { + "type": "development", + "eventSources": { + "default": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+watcher@4.0.4/node_modules/@eggjs/watcher/dist/esm/lib/event-sources/default", + "development": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+watcher@4.0.4/node_modules/@eggjs/watcher/dist/esm/lib/event-sources/development" + } + }, + "customLogger": { + "scheduleLogger": { + "consoleLevel": "NONE", + "file": "egg-schedule.log" + } + }, + "schedule": { + "directory": [] + }, + "multipart": { + "mode": "stream", + "autoFields": false, + "defaultCharset": "utf8", + "defaultParamCharset": "utf8", + "fieldNameSize": 100, + "fieldSize": "100kb", + "fields": 10, + "fileSize": "10mb", + "files": 10, + "fileExtensions": [], + "whitelist": null, + "allowArrayField": false, + "tmpdir": "/var/folders/g8/c087s6rn3n16q32vnxbs47lh0000gn/T/egg-multipart-tmp/hello-redis", + "cleanSchedule": { + "cron": "0 30 4 * * *", + "disable": false + } + }, + "development": { + "watchDirs": [], + "ignoreDirs": [], + "fastReady": false, + "reloadOnDebug": true, + "overrideDefault": false, + "overrideIgnore": false + }, + "logrotator": { + "filesRotateByHour": null, + "hourDelimiter": "-", + "filesRotateBySize": null, + "maxFileSize": 52428800, + "maxFiles": 10, + "rotateDuration": 60000, + "maxDays": 31 + }, + "static": { + "prefix": "/public/", + "dir": "/Users/fengmk2/git/github.com/eggjs/redis/example/hello/app/public", + "dynamic": true, + "preload": false, + "buffer": false, + "maxFiles": 1000 + }, + "view": { + "root": "/Users/fengmk2/git/github.com/eggjs/redis/example/hello/app/view", + "cache": false, + "defaultExtension": ".html", + "defaultViewEngine": "", + "mapping": {} + }, + "env": "local", + "name": "hello-redis", + "keys": "", + "cookies": {}, + "proxy": false, + "maxIpsCount": 0, + "maxProxyCount": 0, + "protocolHeaders": "x-forwarded-proto", + "ipHeaders": "x-forwarded-for", + "hostHeaders": "", + "pkg": { + "name": "hello-redis", + "type": "module" + }, + "baseDir": "/Users/fengmk2/git/github.com/eggjs/redis/example/hello", + "HOME": "/Users/fengmk2", + "rundir": "/Users/fengmk2/git/github.com/eggjs/redis/example/hello/run", + "dump": { + "ignore": "", + "timing": { + "slowBootActionMinDuration": 5000 + } + }, + "confusedConfigurations": { + "bodyparser": "bodyParser", + "notFound": "notfound", + "sitefile": "siteFile", + "middlewares": "middleware", + "httpClient": "httpclient" + }, + "notfound": { + "enable": true, + "pageUrl": "" + }, + "siteFile": { + "enable": true, + "/favicon.ico": "file:///Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/favicon.png", + "cacheControl": "public, max-age=2592000" + }, + "bodyParser": { + "enable": true, + "encoding": "utf8", + "formLimit": "1mb", + "jsonLimit": "1mb", + "textLimit": "1mb", + "strict": true, + "queryString": { + "arrayLimit": 100, + "depth": 5, + "parameterLimit": 1000 + }, + "onProtoPoisoning": "error", + "onerror": "" + }, + "logger": { + "dir": "/Users/fengmk2/git/github.com/eggjs/redis/example/hello/logs/hello-redis", + "encoding": "utf8", + "env": "local", + "level": "INFO", + "consoleLevel": "INFO", + "disableConsoleAfterReady": false, + "outputJSON": false, + "buffer": true, + "appLogName": "hello-redis-web.log", + "coreLogName": "egg-web.log", + "agentLogName": "egg-agent.log", + "errorLogName": "common-error.log", + "coreLogger": { + "consoleLevel": "WARN" + }, + "allowDebugAtProd": false, + "enableFastContextLogger": true + }, + "httpclient": { + "request": { + "timeout": 5000 + } + }, + "meta": { + "enable": true, + "logging": false + }, + "workerStartTimeout": 600000, + "serverTimeout": null, + "cluster": { + "listen": { + "path": "", + "port": 7001, + "hostname": "" + } + }, + "clusterClient": { + "maxWaitTime": 60000, + "responseTimeout": 60000 + }, + "coreMiddlewares": "~config~coreMiddleware", + "appMiddlewares": "~config~middleware", + "appMiddleware": "~config~middleware" + }, + "plugins": { + "onerror": { + "enable": true, + "package": "egg-onerror", + "name": "onerror", + "dependencies": [], + "optionalDependencies": [ + "jsonp" + ], + "env": [], + "from": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/plugin.js", + "path": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-onerror@2.4.0/node_modules/egg-onerror", + "version": "2.4.0" + }, + "session": { + "enable": true, + "package": "@eggjs/session", + "name": "session", + "dependencies": [], + "optionalDependencies": [], + "env": [], + "from": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/plugin.js", + "path": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+session@4.0.0/node_modules/@eggjs/session/dist/esm", + "version": "4.0.0" + }, + "i18n": { + "enable": true, + "package": "@eggjs/i18n", + "name": "i18n", + "dependencies": [], + "optionalDependencies": [], + "env": [], + "from": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/plugin.js", + "path": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+i18n@3.0.1/node_modules/@eggjs/i18n/dist/esm", + "version": "3.0.1" + }, + "watcher": { + "enable": true, + "package": "@eggjs/watcher", + "name": "watcher", + "dependencies": [], + "optionalDependencies": [], + "env": [], + "from": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/plugin.js", + "path": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+watcher@4.0.4/node_modules/@eggjs/watcher/dist/esm", + "version": "4.0.4", + "dependents": [ + "development" + ] + }, + "multipart": { + "enable": true, + "package": "egg-multipart", + "name": "multipart", + "dependencies": [], + "optionalDependencies": [ + "schedule" + ], + "env": [], + "from": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/plugin.js", + "path": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-multipart@3.4.0/node_modules/egg-multipart", + "version": "3.4.0" + }, + "security": { + "enable": true, + "package": "@eggjs/security", + "name": "security", + "dependencies": [], + "optionalDependencies": [ + "session" + ], + "env": [], + "from": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/plugin.js", + "path": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm", + "version": "4.0.0" + }, + "development": { + "enable": true, + "package": "@eggjs/development", + "name": "development", + "dependencies": [ + "watcher" + ], + "optionalDependencies": [], + "env": [ + "local" + ], + "from": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/plugin.js", + "path": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+development@4.0.0/node_modules/@eggjs/development/dist/esm", + "version": "4.0.0" + }, + "logrotator": { + "enable": true, + "package": "egg-logrotator", + "name": "logrotator", + "dependencies": [ + "schedule" + ], + "optionalDependencies": [], + "env": [], + "from": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/plugin.js", + "path": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-logrotator@3.2.0/node_modules/egg-logrotator", + "version": "3.2.0" + }, + "schedule": { + "enable": true, + "package": "@eggjs/schedule", + "name": "schedule", + "dependencies": [], + "optionalDependencies": [], + "env": [], + "from": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/plugin.js", + "path": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+schedule@5.0.2/node_modules/@eggjs/schedule/dist/esm", + "version": "5.0.2", + "dependents": [ + "logrotator" + ] + }, + "static": { + "enable": true, + "package": "@eggjs/static", + "name": "static", + "dependencies": [], + "optionalDependencies": [], + "env": [], + "from": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/plugin.js", + "path": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+static@3.0.0/node_modules/@eggjs/static/dist/esm", + "version": "3.0.0" + }, + "jsonp": { + "enable": true, + "package": "@eggjs/jsonp", + "name": "jsonp", + "dependencies": [], + "optionalDependencies": [ + "security" + ], + "env": [], + "from": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/plugin.js", + "path": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+jsonp@3.0.0/node_modules/@eggjs/jsonp/dist/esm", + "version": "3.0.0" + }, + "view": { + "enable": true, + "package": "egg-view", + "name": "view", + "dependencies": [], + "optionalDependencies": [], + "env": [], + "from": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/plugin.js", + "path": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-view@2.1.4/node_modules/egg-view", + "version": "2.1.4" + }, + "redis": { + "enable": true, + "path": "../../../../..", + "name": "redis", + "dependencies": [], + "optionalDependencies": [], + "env": [], + "from": "/Users/fengmk2/git/github.com/eggjs/redis/example/hello/config/plugin.ts" + } + }, + "appInfo": { + "name": "hello-redis", + "baseDir": "/Users/fengmk2/git/github.com/eggjs/redis/example/hello", + "env": "local", + "scope": "", + "HOME": "/Users/fengmk2", + "pkg": { + "name": "hello-redis", + "type": "module" + }, + "root": "/Users/fengmk2/git/github.com/eggjs/redis/example/hello" + } +} \ No newline at end of file diff --git a/example/hello/run/agent_config_meta.json b/example/hello/run/agent_config_meta.json new file mode 100644 index 0000000..3c1df3b --- /dev/null +++ b/example/hello/run/agent_config_meta.json @@ -0,0 +1,259 @@ +{ + "keys": "/Users/fengmk2/git/github.com/eggjs/redis/example/hello/config/config.default.ts", + "session": { + "key": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+session@4.0.0/node_modules/@eggjs/session/dist/esm/config/config.default.js", + "maxAge": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+session@4.0.0/node_modules/@eggjs/session/dist/esm/config/config.default.js", + "autoCommit": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+session@4.0.0/node_modules/@eggjs/session/dist/esm/config/config.default.js", + "overwrite": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+session@4.0.0/node_modules/@eggjs/session/dist/esm/config/config.default.js", + "httpOnly": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+session@4.0.0/node_modules/@eggjs/session/dist/esm/config/config.default.js", + "signed": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+session@4.0.0/node_modules/@eggjs/session/dist/esm/config/config.default.js", + "rolling": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+session@4.0.0/node_modules/@eggjs/session/dist/esm/config/config.default.js", + "renew": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+session@4.0.0/node_modules/@eggjs/session/dist/esm/config/config.default.js", + "encode": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+session@4.0.0/node_modules/@eggjs/session/dist/esm/config/config.default.js", + "decode": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+session@4.0.0/node_modules/@eggjs/session/dist/esm/config/config.default.js", + "logValue": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+session@4.0.0/node_modules/@eggjs/session/dist/esm/config/config.default.js" + }, + "security": { + "domainWhiteList": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js", + "protocolWhiteList": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js", + "defaultMiddleware": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js", + "csrf": { + "enable": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js", + "type": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js", + "ignoreJSON": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js", + "cookieName": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js", + "sessionName": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js", + "headerName": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js", + "bodyName": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js", + "queryName": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js", + "rotateWhenInvalid": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js", + "useSession": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js", + "supportedRequests": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js", + "refererWhiteList": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js", + "cookieOptions": { + "signed": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js", + "httpOnly": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js", + "overwrite": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js" + } + }, + "xframe": { + "enable": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js", + "value": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js" + }, + "hsts": { + "enable": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.local.js", + "maxAge": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js", + "includeSubdomains": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js" + }, + "methodnoallow": { + "enable": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js" + }, + "noopen": { + "enable": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js" + }, + "nosniff": { + "enable": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js" + }, + "xssProtection": { + "enable": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js", + "value": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js" + }, + "csp": { + "enable": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js", + "policy": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js" + }, + "referrerPolicy": { + "enable": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js", + "value": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js" + }, + "dta": { + "enable": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js" + }, + "ssrf": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js" + }, + "helper": { + "shtml": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js" + }, + "jsonp": { + "limit": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+jsonp@3.0.0/node_modules/@eggjs/jsonp/dist/esm/config/config.default.js", + "callback": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+jsonp@3.0.0/node_modules/@eggjs/jsonp/dist/esm/config/config.default.js", + "csrf": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+jsonp@3.0.0/node_modules/@eggjs/jsonp/dist/esm/config/config.default.js" + }, + "onerror": { + "errorPageUrl": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-onerror@2.4.0/node_modules/egg-onerror/config/config.default.js", + "appErrorFilter": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-onerror@2.4.0/node_modules/egg-onerror/config/config.default.js", + "templatePath": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-onerror@2.4.0/node_modules/egg-onerror/config/config.default.js" + }, + "i18n": { + "defaultLocale": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+i18n@3.0.1/node_modules/@eggjs/i18n/dist/esm/config/config.default.js", + "dirs": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+i18n@3.0.1/node_modules/@eggjs/i18n/dist/esm/config/config.default.js", + "queryField": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+i18n@3.0.1/node_modules/@eggjs/i18n/dist/esm/config/config.default.js", + "cookieField": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+i18n@3.0.1/node_modules/@eggjs/i18n/dist/esm/config/config.default.js", + "cookieDomain": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+i18n@3.0.1/node_modules/@eggjs/i18n/dist/esm/config/config.default.js", + "cookieMaxAge": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+i18n@3.0.1/node_modules/@eggjs/i18n/dist/esm/config/config.default.js", + "localeAlias": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+i18n@3.0.1/node_modules/@eggjs/i18n/dist/esm/config/config.default.js", + "writeCookie": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+i18n@3.0.1/node_modules/@eggjs/i18n/dist/esm/config/config.default.js" + }, + "watcher": { + "type": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+watcher@4.0.4/node_modules/@eggjs/watcher/dist/esm/config/config.local.js", + "eventSources": { + "default": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+watcher@4.0.4/node_modules/@eggjs/watcher/dist/esm/config/config.default.js", + "development": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+watcher@4.0.4/node_modules/@eggjs/watcher/dist/esm/config/config.default.js" + } + }, + "customLogger": { + "scheduleLogger": { + "consoleLevel": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+schedule@5.0.2/node_modules/@eggjs/schedule/dist/esm/config/config.default.js", + "file": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+schedule@5.0.2/node_modules/@eggjs/schedule/dist/esm/config/config.default.js" + } + }, + "schedule": { + "directory": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+schedule@5.0.2/node_modules/@eggjs/schedule/dist/esm/config/config.default.js" + }, + "multipart": { + "mode": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-multipart@3.4.0/node_modules/egg-multipart/config/config.default.js", + "autoFields": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-multipart@3.4.0/node_modules/egg-multipart/config/config.default.js", + "defaultCharset": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-multipart@3.4.0/node_modules/egg-multipart/config/config.default.js", + "defaultParamCharset": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-multipart@3.4.0/node_modules/egg-multipart/config/config.default.js", + "fieldNameSize": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-multipart@3.4.0/node_modules/egg-multipart/config/config.default.js", + "fieldSize": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-multipart@3.4.0/node_modules/egg-multipart/config/config.default.js", + "fields": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-multipart@3.4.0/node_modules/egg-multipart/config/config.default.js", + "fileSize": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-multipart@3.4.0/node_modules/egg-multipart/config/config.default.js", + "files": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-multipart@3.4.0/node_modules/egg-multipart/config/config.default.js", + "fileExtensions": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-multipart@3.4.0/node_modules/egg-multipart/config/config.default.js", + "whitelist": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-multipart@3.4.0/node_modules/egg-multipart/config/config.default.js", + "allowArrayField": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-multipart@3.4.0/node_modules/egg-multipart/config/config.default.js", + "tmpdir": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-multipart@3.4.0/node_modules/egg-multipart/config/config.default.js", + "cleanSchedule": { + "cron": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-multipart@3.4.0/node_modules/egg-multipart/config/config.default.js", + "disable": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-multipart@3.4.0/node_modules/egg-multipart/config/config.default.js" + } + }, + "development": { + "watchDirs": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+development@4.0.0/node_modules/@eggjs/development/dist/esm/config/config.default.js", + "ignoreDirs": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+development@4.0.0/node_modules/@eggjs/development/dist/esm/config/config.default.js", + "fastReady": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+development@4.0.0/node_modules/@eggjs/development/dist/esm/config/config.default.js", + "reloadOnDebug": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+development@4.0.0/node_modules/@eggjs/development/dist/esm/config/config.default.js", + "overrideDefault": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+development@4.0.0/node_modules/@eggjs/development/dist/esm/config/config.default.js", + "overrideIgnore": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+development@4.0.0/node_modules/@eggjs/development/dist/esm/config/config.default.js" + }, + "logrotator": { + "filesRotateByHour": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-logrotator@3.2.0/node_modules/egg-logrotator/config/config.default.js", + "hourDelimiter": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-logrotator@3.2.0/node_modules/egg-logrotator/config/config.default.js", + "filesRotateBySize": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-logrotator@3.2.0/node_modules/egg-logrotator/config/config.default.js", + "maxFileSize": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-logrotator@3.2.0/node_modules/egg-logrotator/config/config.default.js", + "maxFiles": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-logrotator@3.2.0/node_modules/egg-logrotator/config/config.default.js", + "rotateDuration": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-logrotator@3.2.0/node_modules/egg-logrotator/config/config.default.js", + "maxDays": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-logrotator@3.2.0/node_modules/egg-logrotator/config/config.default.js" + }, + "static": { + "prefix": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+static@3.0.0/node_modules/@eggjs/static/dist/esm/config/config.default.js", + "dir": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+static@3.0.0/node_modules/@eggjs/static/dist/esm/config/config.default.js", + "dynamic": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+static@3.0.0/node_modules/@eggjs/static/dist/esm/config/config.default.js", + "preload": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+static@3.0.0/node_modules/@eggjs/static/dist/esm/config/config.default.js", + "buffer": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+static@3.0.0/node_modules/@eggjs/static/dist/esm/config/config.default.js", + "maxFiles": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+static@3.0.0/node_modules/@eggjs/static/dist/esm/config/config.default.js" + }, + "view": { + "root": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-view@2.1.4/node_modules/egg-view/config/config.default.js", + "cache": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-view@2.1.4/node_modules/egg-view/config/config.local.js", + "defaultExtension": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-view@2.1.4/node_modules/egg-view/config/config.default.js", + "defaultViewEngine": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-view@2.1.4/node_modules/egg-view/config/config.default.js", + "mapping": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-view@2.1.4/node_modules/egg-view/config/config.default.js" + }, + "env": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", + "name": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", + "cookies": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", + "proxy": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", + "maxIpsCount": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", + "maxProxyCount": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", + "protocolHeaders": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", + "ipHeaders": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", + "hostHeaders": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", + "pkg": { + "name": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", + "type": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js" + }, + "baseDir": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", + "HOME": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", + "rundir": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", + "dump": { + "ignore": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", + "timing": { + "slowBootActionMinDuration": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js" + } + }, + "confusedConfigurations": { + "bodyparser": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", + "notFound": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", + "sitefile": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", + "middlewares": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", + "httpClient": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js" + }, + "notfound": { + "enable": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", + "pageUrl": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js" + }, + "siteFile": { + "enable": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", + "/favicon.ico": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", + "cacheControl": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js" + }, + "bodyParser": { + "enable": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", + "encoding": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", + "formLimit": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", + "jsonLimit": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", + "textLimit": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", + "strict": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", + "queryString": { + "arrayLimit": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", + "depth": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", + "parameterLimit": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js" + }, + "onProtoPoisoning": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", + "onerror": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js" + }, + "logger": { + "dir": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", + "encoding": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", + "env": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", + "level": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", + "consoleLevel": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", + "disableConsoleAfterReady": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", + "outputJSON": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", + "buffer": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", + "appLogName": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", + "coreLogName": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", + "agentLogName": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", + "errorLogName": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", + "coreLogger": { + "consoleLevel": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.local.js" + }, + "allowDebugAtProd": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", + "enableFastContextLogger": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js" + }, + "httpclient": { + "request": { + "timeout": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js" + } + }, + "meta": { + "enable": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", + "logging": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js" + }, + "coreMiddleware": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", + "workerStartTimeout": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", + "serverTimeout": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", + "cluster": { + "listen": { + "path": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", + "port": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", + "hostname": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js" + } + }, + "clusterClient": { + "maxWaitTime": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", + "responseTimeout": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js" + } +} \ No newline at end of file diff --git a/example/hello/run/agent_timing_95228.json b/example/hello/run/agent_timing_95228.json new file mode 100644 index 0000000..66ad286 --- /dev/null +++ b/example/hello/run/agent_timing_95228.json @@ -0,0 +1,362 @@ +[ + { + "name": "Process Start", + "start": 1737425752469, + "pid": 95228, + "index": 0, + "end": 1737425752941, + "duration": 472 + }, + { + "name": "agent Start", + "start": 1737425752941, + "pid": 95228, + "index": 1, + "end": 1737425753707, + "duration": 766 + }, + { + "name": "Before Start in load files", + "start": 1737425752944, + "pid": 95228, + "index": 2, + "end": 1737425753697, + "duration": 753 + }, + { + "name": "Load Plugin", + "start": 1737425752944, + "pid": 95228, + "index": 3, + "end": 1737425753611, + "duration": 667 + }, + { + "name": "Load Config", + "start": 1737425753611, + "pid": 95228, + "index": 4, + "end": 1737425753630, + "duration": 19 + }, + { + "name": "Require(0) config/config.default.ts", + "start": 1737425753611, + "pid": 95228, + "index": 5, + "end": 1737425753612, + "duration": 1 + }, + { + "name": "Require(1) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+session@4.0.0/node_modules/@eggjs/session/dist/esm/config/config.default.js", + "start": 1737425753613, + "pid": 95228, + "index": 6, + "end": 1737425753613, + "duration": 0 + }, + { + "name": "Require(2) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js", + "start": 1737425753613, + "pid": 95228, + "index": 7, + "end": 1737425753616, + "duration": 3 + }, + { + "name": "Require(3) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+jsonp@3.0.0/node_modules/@eggjs/jsonp/dist/esm/config/config.default.js", + "start": 1737425753616, + "pid": 95228, + "index": 8, + "end": 1737425753617, + "duration": 1 + }, + { + "name": "Require(4) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-onerror@2.4.0/node_modules/egg-onerror/config/config.default.js", + "start": 1737425753617, + "pid": 95228, + "index": 9, + "end": 1737425753617, + "duration": 0 + }, + { + "name": "Require(5) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+i18n@3.0.1/node_modules/@eggjs/i18n/dist/esm/config/config.default.js", + "start": 1737425753617, + "pid": 95228, + "index": 10, + "end": 1737425753618, + "duration": 1 + }, + { + "name": "Require(6) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+watcher@4.0.4/node_modules/@eggjs/watcher/dist/esm/config/config.default.js", + "start": 1737425753618, + "pid": 95228, + "index": 11, + "end": 1737425753619, + "duration": 1 + }, + { + "name": "Require(7) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+schedule@5.0.2/node_modules/@eggjs/schedule/dist/esm/config/config.default.js", + "start": 1737425753619, + "pid": 95228, + "index": 12, + "end": 1737425753619, + "duration": 0 + }, + { + "name": "Require(8) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-multipart@3.4.0/node_modules/egg-multipart/config/config.default.js", + "start": 1737425753619, + "pid": 95228, + "index": 13, + "end": 1737425753620, + "duration": 1 + }, + { + "name": "Require(9) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+development@4.0.0/node_modules/@eggjs/development/dist/esm/config/config.default.js", + "start": 1737425753620, + "pid": 95228, + "index": 14, + "end": 1737425753620, + "duration": 0 + }, + { + "name": "Require(10) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-logrotator@3.2.0/node_modules/egg-logrotator/config/config.default.js", + "start": 1737425753621, + "pid": 95228, + "index": 15, + "end": 1737425753621, + "duration": 0 + }, + { + "name": "Require(11) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+static@3.0.0/node_modules/@eggjs/static/dist/esm/config/config.default.js", + "start": 1737425753621, + "pid": 95228, + "index": 16, + "end": 1737425753622, + "duration": 1 + }, + { + "name": "Require(12) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-view@2.1.4/node_modules/egg-view/config/config.default.js", + "start": 1737425753622, + "pid": 95228, + "index": 17, + "end": 1737425753622, + "duration": 0 + }, + { + "name": "Require(13) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", + "start": 1737425753623, + "pid": 95228, + "index": 18, + "end": 1737425753624, + "duration": 1 + }, + { + "name": "Require(14) config/config.default.ts", + "start": 1737425753625, + "pid": 95228, + "index": 19, + "end": 1737425753625, + "duration": 0 + }, + { + "name": "Require(15) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.local.js", + "start": 1737425753625, + "pid": 95228, + "index": 20, + "end": 1737425753626, + "duration": 1 + }, + { + "name": "Require(16) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+watcher@4.0.4/node_modules/@eggjs/watcher/dist/esm/config/config.local.js", + "start": 1737425753627, + "pid": 95228, + "index": 21, + "end": 1737425753627, + "duration": 0 + }, + { + "name": "Require(17) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-view@2.1.4/node_modules/egg-view/config/config.local.js", + "start": 1737425753629, + "pid": 95228, + "index": 22, + "end": 1737425753629, + "duration": 0 + }, + { + "name": "Require(18) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.local.js", + "start": 1737425753629, + "pid": 95228, + "index": 23, + "end": 1737425753630, + "duration": 1 + }, + { + "name": "Load extend/agent.js", + "start": 1737425753630, + "pid": 95228, + "index": 24, + "end": 1737425753658, + "duration": 28 + }, + { + "name": "Require(19) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/app/extend/agent.js", + "start": 1737425753630, + "pid": 95228, + "index": 25, + "end": 1737425753638, + "duration": 8 + }, + { + "name": "Require(20) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+schedule@5.0.2/node_modules/@eggjs/schedule/dist/esm/app/extend/agent.js", + "start": 1737425753642, + "pid": 95228, + "index": 26, + "end": 1737425753649, + "duration": 7 + }, + { + "name": "Require(21) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-logrotator@3.2.0/node_modules/egg-logrotator/app/extend/agent.js", + "start": 1737425753650, + "pid": 95228, + "index": 27, + "end": 1737425753654, + "duration": 4 + }, + { + "name": "Load extend/context.js", + "start": 1737425753658, + "pid": 95228, + "index": 28, + "end": 1737425753678, + "duration": 20 + }, + { + "name": "Require(22) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/app/extend/context.js", + "start": 1737425753658, + "pid": 95228, + "index": 29, + "end": 1737425753658, + "duration": 0 + }, + { + "name": "Require(23) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+jsonp@3.0.0/node_modules/@eggjs/jsonp/dist/esm/app/extend/context.js", + "start": 1737425753658, + "pid": 95228, + "index": 30, + "end": 1737425753660, + "duration": 2 + }, + { + "name": "Require(24) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+i18n@3.0.1/node_modules/@eggjs/i18n/dist/esm/app/extend/context.js", + "start": 1737425753660, + "pid": 95228, + "index": 31, + "end": 1737425753663, + "duration": 3 + }, + { + "name": "Require(25) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-multipart@3.4.0/node_modules/egg-multipart/app/extend/context.js", + "start": 1737425753664, + "pid": 95228, + "index": 32, + "end": 1737425753668, + "duration": 4 + }, + { + "name": "Require(26) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-view@2.1.4/node_modules/egg-view/app/extend/context.js", + "start": 1737425753669, + "pid": 95228, + "index": 33, + "end": 1737425753671, + "duration": 2 + }, + { + "name": "Require(27) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/app/extend/context.js", + "start": 1737425753671, + "pid": 95228, + "index": 34, + "end": 1737425753671, + "duration": 0 + }, + { + "name": "Load agent.js", + "start": 1737425753678, + "pid": 95228, + "index": 35, + "end": 1737425753692, + "duration": 14 + }, + { + "name": "Require(28) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/agent.js", + "start": 1737425753678, + "pid": 95228, + "index": 36, + "end": 1737425753679, + "duration": 1 + }, + { + "name": "Require(29) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-onerror@2.4.0/node_modules/egg-onerror/agent.js", + "start": 1737425753680, + "pid": 95228, + "index": 37, + "end": 1737425753682, + "duration": 2 + }, + { + "name": "Require(30) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+watcher@4.0.4/node_modules/@eggjs/watcher/dist/esm/agent.js", + "start": 1737425753682, + "pid": 95228, + "index": 38, + "end": 1737425753683, + "duration": 1 + }, + { + "name": "Require(31) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+schedule@5.0.2/node_modules/@eggjs/schedule/dist/esm/agent.js", + "start": 1737425753683, + "pid": 95228, + "index": 39, + "end": 1737425753684, + "duration": 1 + }, + { + "name": "Require(32) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+development@4.0.0/node_modules/@eggjs/development/dist/esm/agent.js", + "start": 1737425753685, + "pid": 95228, + "index": 40, + "end": 1737425753688, + "duration": 3 + }, + { + "name": "Require(33) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-logrotator@3.2.0/node_modules/egg-logrotator/agent.js", + "start": 1737425753688, + "pid": 95228, + "index": 41, + "end": 1737425753688, + "duration": 0 + }, + { + "name": "Require(34) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/agent.js", + "start": 1737425753689, + "pid": 95228, + "index": 42, + "end": 1737425753690, + "duration": 1 + }, + { + "name": "Did Load in /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+watcher@4.0.4/node_modules/@eggjs/watcher/dist/esm/agent.js:didLoad", + "start": 1737425753697, + "pid": 95228, + "index": 43, + "end": 1737425753699, + "duration": 2 + }, + { + "name": "Did Load in /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+development@4.0.0/node_modules/@eggjs/development/dist/esm/agent.js:didLoad", + "start": 1737425753697, + "pid": 95228, + "index": 44, + "end": 1737425753706, + "duration": 9 + } +] \ No newline at end of file diff --git a/example/hello/run/application_config.json b/example/hello/run/application_config.json new file mode 100644 index 0000000..2cf7748 --- /dev/null +++ b/example/hello/run/application_config.json @@ -0,0 +1,499 @@ +{ + "config": { + "middleware": [], + "coreMiddleware": [ + "meta", + "siteFile", + "notfound", + "static", + "bodyParser", + "overrideMethod", + "session", + "securities", + "eggLoaderTrace" + ], + "session": { + "key": "EGG_SESS", + "maxAge": 86400000, + "autoCommit": true, + "overwrite": true, + "httpOnly": true, + "signed": true, + "rolling": false, + "renew": false, + "encode": "", + "decode": "", + "logValue": true, + "genid": "" + }, + "security": { + "domainWhiteList": [], + "protocolWhiteList": [], + "defaultMiddleware": [ + "csrf", + "hsts", + "methodnoallow", + "noopen", + "nosniff", + "csp", + "xssProtection", + "xframe", + "dta" + ], + "csrf": { + "enable": true, + "type": "ctoken", + "ignoreJSON": false, + "cookieName": "csrfToken", + "sessionName": "csrfToken", + "headerName": "x-csrf-token", + "bodyName": "_csrf", + "queryName": "_csrf", + "rotateWhenInvalid": false, + "useSession": false, + "supportedRequests": [ + { + "path": {}, + "methods": [ + "POST", + "PATCH", + "DELETE", + "PUT", + "CONNECT" + ] + } + ], + "refererWhiteList": [], + "cookieOptions": { + "signed": false, + "httpOnly": false, + "overwrite": true + }, + "matching": "" + }, + "xframe": { + "enable": true, + "value": "SAMEORIGIN", + "matching": "" + }, + "hsts": { + "enable": false, + "maxAge": 31536000, + "includeSubdomains": false + }, + "methodnoallow": { + "enable": true, + "matching": "" + }, + "noopen": { + "enable": true, + "matching": "" + }, + "nosniff": { + "enable": true, + "matching": "" + }, + "xssProtection": { + "enable": true, + "value": "1; mode=block", + "matching": "" + }, + "csp": { + "enable": false, + "policy": {} + }, + "referrerPolicy": { + "enable": false, + "value": "no-referrer-when-downgrade" + }, + "dta": { + "enable": true, + "matching": "" + }, + "ssrf": {} + }, + "helper": { + "shtml": {} + }, + "jsonp": { + "limit": 50, + "callback": [ + "_callback", + "callback" + ], + "csrf": false + }, + "onerror": { + "errorPageUrl": "", + "appErrorFilter": null, + "templatePath": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-onerror@2.4.0/node_modules/egg-onerror/lib/onerror_page.mustache" + }, + "i18n": { + "defaultLocale": "en-us", + "dirs": [ + "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+session@4.0.0/node_modules/@eggjs/session/dist/esm/config/locales", + "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/locales", + "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+jsonp@3.0.0/node_modules/@eggjs/jsonp/dist/esm/config/locales", + "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-onerror@2.4.0/node_modules/egg-onerror/config/locales", + "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+i18n@3.0.1/node_modules/@eggjs/i18n/dist/esm/config/locales", + "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+watcher@4.0.4/node_modules/@eggjs/watcher/dist/esm/config/locales", + "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+schedule@5.0.2/node_modules/@eggjs/schedule/dist/esm/config/locales", + "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-multipart@3.4.0/node_modules/egg-multipart/config/locales", + "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+development@4.0.0/node_modules/@eggjs/development/dist/esm/config/locales", + "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-logrotator@3.2.0/node_modules/egg-logrotator/config/locales", + "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+static@3.0.0/node_modules/@eggjs/static/dist/esm/config/locales", + "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-view@2.1.4/node_modules/egg-view/config/locales", + "../../../../../config/locales", + "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/locales", + "/Users/fengmk2/git/github.com/eggjs/redis/example/hello/config/locales" + ], + "queryField": "locale", + "cookieField": "locale", + "cookieDomain": "", + "cookieMaxAge": 31557600000, + "localeAlias": {}, + "writeCookie": true + }, + "watcher": { + "type": "development", + "eventSources": { + "default": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+watcher@4.0.4/node_modules/@eggjs/watcher/dist/esm/lib/event-sources/default", + "development": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+watcher@4.0.4/node_modules/@eggjs/watcher/dist/esm/lib/event-sources/development" + } + }, + "customLogger": { + "scheduleLogger": { + "consoleLevel": "NONE", + "file": "egg-schedule.log" + } + }, + "schedule": { + "directory": [] + }, + "multipart": { + "mode": "stream", + "autoFields": false, + "defaultCharset": "utf8", + "defaultParamCharset": "utf8", + "fieldNameSize": 100, + "fieldSize": 102400, + "fields": 10, + "fileSize": 10485760, + "files": 10, + "fileExtensions": [], + "whitelist": null, + "allowArrayField": false, + "tmpdir": "/var/folders/g8/c087s6rn3n16q32vnxbs47lh0000gn/T/egg-multipart-tmp/hello-redis", + "cleanSchedule": { + "cron": "0 30 4 * * *", + "disable": false + }, + "checkFile": "" + }, + "development": { + "watchDirs": [], + "ignoreDirs": [], + "fastReady": false, + "reloadOnDebug": true, + "overrideDefault": false, + "overrideIgnore": false + }, + "logrotator": { + "filesRotateByHour": null, + "hourDelimiter": "-", + "filesRotateBySize": null, + "maxFileSize": 52428800, + "maxFiles": 10, + "rotateDuration": 60000, + "maxDays": 31 + }, + "static": { + "prefix": "/public/", + "dir": "/Users/fengmk2/git/github.com/eggjs/redis/example/hello/app/public", + "dynamic": true, + "preload": false, + "buffer": false, + "maxFiles": 1000 + }, + "view": { + "root": "/Users/fengmk2/git/github.com/eggjs/redis/example/hello/app/view", + "cache": false, + "defaultExtension": ".html", + "defaultViewEngine": "", + "mapping": {} + }, + "env": "local", + "name": "hello-redis", + "keys": "", + "cookies": {}, + "proxy": false, + "maxIpsCount": 0, + "maxProxyCount": 0, + "protocolHeaders": "x-forwarded-proto", + "ipHeaders": "x-forwarded-for", + "hostHeaders": "", + "pkg": { + "name": "hello-redis", + "type": "module" + }, + "baseDir": "/Users/fengmk2/git/github.com/eggjs/redis/example/hello", + "HOME": "/Users/fengmk2", + "rundir": "/Users/fengmk2/git/github.com/eggjs/redis/example/hello/run", + "dump": { + "ignore": "", + "timing": { + "slowBootActionMinDuration": 5000 + } + }, + "confusedConfigurations": { + "bodyparser": "bodyParser", + "notFound": "notfound", + "sitefile": "siteFile", + "middlewares": "middleware", + "httpClient": "httpclient" + }, + "notfound": { + "enable": true, + "pageUrl": "" + }, + "siteFile": { + "enable": true, + "/favicon.ico": "file:///Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/favicon.png", + "cacheControl": "public, max-age=2592000" + }, + "bodyParser": { + "enable": true, + "encoding": "utf8", + "formLimit": "1mb", + "jsonLimit": "1mb", + "textLimit": "1mb", + "strict": true, + "queryString": { + "arrayLimit": 100, + "depth": 5, + "parameterLimit": 1000 + }, + "onProtoPoisoning": "error", + "returnRawBody": true + }, + "logger": { + "dir": "/Users/fengmk2/git/github.com/eggjs/redis/example/hello/logs/hello-redis", + "encoding": "utf8", + "env": "local", + "level": "INFO", + "consoleLevel": "INFO", + "disableConsoleAfterReady": false, + "outputJSON": false, + "buffer": true, + "appLogName": "hello-redis-web.log", + "coreLogName": "egg-web.log", + "agentLogName": "egg-agent.log", + "errorLogName": "common-error.log", + "coreLogger": { + "consoleLevel": "WARN" + }, + "allowDebugAtProd": false, + "enableFastContextLogger": true + }, + "httpclient": { + "request": { + "timeout": 5000 + } + }, + "meta": { + "enable": true, + "logging": false + }, + "workerStartTimeout": 600000, + "serverTimeout": null, + "cluster": { + "listen": { + "path": "", + "port": 7001, + "hostname": "" + } + }, + "clusterClient": { + "maxWaitTime": 60000, + "responseTimeout": 60000 + }, + "coreMiddlewares": "~config~coreMiddleware", + "appMiddlewares": "~config~middleware", + "appMiddleware": "~config~middleware" + }, + "plugins": { + "onerror": { + "enable": true, + "package": "egg-onerror", + "name": "onerror", + "dependencies": [], + "optionalDependencies": [ + "jsonp" + ], + "env": [], + "from": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/plugin.js", + "path": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-onerror@2.4.0/node_modules/egg-onerror", + "version": "2.4.0" + }, + "session": { + "enable": true, + "package": "@eggjs/session", + "name": "session", + "dependencies": [], + "optionalDependencies": [], + "env": [], + "from": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/plugin.js", + "path": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+session@4.0.0/node_modules/@eggjs/session/dist/esm", + "version": "4.0.0" + }, + "i18n": { + "enable": true, + "package": "@eggjs/i18n", + "name": "i18n", + "dependencies": [], + "optionalDependencies": [], + "env": [], + "from": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/plugin.js", + "path": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+i18n@3.0.1/node_modules/@eggjs/i18n/dist/esm", + "version": "3.0.1" + }, + "watcher": { + "enable": true, + "package": "@eggjs/watcher", + "name": "watcher", + "dependencies": [], + "optionalDependencies": [], + "env": [], + "from": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/plugin.js", + "path": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+watcher@4.0.4/node_modules/@eggjs/watcher/dist/esm", + "version": "4.0.4", + "dependents": [ + "development" + ] + }, + "multipart": { + "enable": true, + "package": "egg-multipart", + "name": "multipart", + "dependencies": [], + "optionalDependencies": [ + "schedule" + ], + "env": [], + "from": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/plugin.js", + "path": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-multipart@3.4.0/node_modules/egg-multipart", + "version": "3.4.0" + }, + "security": { + "enable": true, + "package": "@eggjs/security", + "name": "security", + "dependencies": [], + "optionalDependencies": [ + "session" + ], + "env": [], + "from": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/plugin.js", + "path": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm", + "version": "4.0.0" + }, + "development": { + "enable": true, + "package": "@eggjs/development", + "name": "development", + "dependencies": [ + "watcher" + ], + "optionalDependencies": [], + "env": [ + "local" + ], + "from": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/plugin.js", + "path": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+development@4.0.0/node_modules/@eggjs/development/dist/esm", + "version": "4.0.0" + }, + "logrotator": { + "enable": true, + "package": "egg-logrotator", + "name": "logrotator", + "dependencies": [ + "schedule" + ], + "optionalDependencies": [], + "env": [], + "from": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/plugin.js", + "path": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-logrotator@3.2.0/node_modules/egg-logrotator", + "version": "3.2.0" + }, + "schedule": { + "enable": true, + "package": "@eggjs/schedule", + "name": "schedule", + "dependencies": [], + "optionalDependencies": [], + "env": [], + "from": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/plugin.js", + "path": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+schedule@5.0.2/node_modules/@eggjs/schedule/dist/esm", + "version": "5.0.2", + "dependents": [ + "logrotator" + ] + }, + "static": { + "enable": true, + "package": "@eggjs/static", + "name": "static", + "dependencies": [], + "optionalDependencies": [], + "env": [], + "from": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/plugin.js", + "path": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+static@3.0.0/node_modules/@eggjs/static/dist/esm", + "version": "3.0.0" + }, + "jsonp": { + "enable": true, + "package": "@eggjs/jsonp", + "name": "jsonp", + "dependencies": [], + "optionalDependencies": [ + "security" + ], + "env": [], + "from": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/plugin.js", + "path": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+jsonp@3.0.0/node_modules/@eggjs/jsonp/dist/esm", + "version": "3.0.0" + }, + "view": { + "enable": true, + "package": "egg-view", + "name": "view", + "dependencies": [], + "optionalDependencies": [], + "env": [], + "from": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/plugin.js", + "path": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-view@2.1.4/node_modules/egg-view", + "version": "2.1.4" + }, + "redis": { + "enable": true, + "path": "../../../../..", + "name": "redis", + "dependencies": [], + "optionalDependencies": [], + "env": [], + "from": "/Users/fengmk2/git/github.com/eggjs/redis/example/hello/config/plugin.ts" + } + }, + "appInfo": { + "name": "hello-redis", + "baseDir": "/Users/fengmk2/git/github.com/eggjs/redis/example/hello", + "env": "local", + "scope": "", + "HOME": "/Users/fengmk2", + "pkg": { + "name": "hello-redis", + "type": "module" + }, + "root": "/Users/fengmk2/git/github.com/eggjs/redis/example/hello" + } +} \ No newline at end of file diff --git a/example/hello/run/application_config_meta.json b/example/hello/run/application_config_meta.json new file mode 100644 index 0000000..3c1df3b --- /dev/null +++ b/example/hello/run/application_config_meta.json @@ -0,0 +1,259 @@ +{ + "keys": "/Users/fengmk2/git/github.com/eggjs/redis/example/hello/config/config.default.ts", + "session": { + "key": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+session@4.0.0/node_modules/@eggjs/session/dist/esm/config/config.default.js", + "maxAge": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+session@4.0.0/node_modules/@eggjs/session/dist/esm/config/config.default.js", + "autoCommit": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+session@4.0.0/node_modules/@eggjs/session/dist/esm/config/config.default.js", + "overwrite": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+session@4.0.0/node_modules/@eggjs/session/dist/esm/config/config.default.js", + "httpOnly": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+session@4.0.0/node_modules/@eggjs/session/dist/esm/config/config.default.js", + "signed": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+session@4.0.0/node_modules/@eggjs/session/dist/esm/config/config.default.js", + "rolling": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+session@4.0.0/node_modules/@eggjs/session/dist/esm/config/config.default.js", + "renew": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+session@4.0.0/node_modules/@eggjs/session/dist/esm/config/config.default.js", + "encode": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+session@4.0.0/node_modules/@eggjs/session/dist/esm/config/config.default.js", + "decode": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+session@4.0.0/node_modules/@eggjs/session/dist/esm/config/config.default.js", + "logValue": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+session@4.0.0/node_modules/@eggjs/session/dist/esm/config/config.default.js" + }, + "security": { + "domainWhiteList": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js", + "protocolWhiteList": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js", + "defaultMiddleware": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js", + "csrf": { + "enable": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js", + "type": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js", + "ignoreJSON": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js", + "cookieName": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js", + "sessionName": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js", + "headerName": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js", + "bodyName": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js", + "queryName": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js", + "rotateWhenInvalid": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js", + "useSession": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js", + "supportedRequests": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js", + "refererWhiteList": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js", + "cookieOptions": { + "signed": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js", + "httpOnly": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js", + "overwrite": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js" + } + }, + "xframe": { + "enable": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js", + "value": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js" + }, + "hsts": { + "enable": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.local.js", + "maxAge": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js", + "includeSubdomains": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js" + }, + "methodnoallow": { + "enable": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js" + }, + "noopen": { + "enable": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js" + }, + "nosniff": { + "enable": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js" + }, + "xssProtection": { + "enable": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js", + "value": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js" + }, + "csp": { + "enable": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js", + "policy": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js" + }, + "referrerPolicy": { + "enable": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js", + "value": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js" + }, + "dta": { + "enable": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js" + }, + "ssrf": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js" + }, + "helper": { + "shtml": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js" + }, + "jsonp": { + "limit": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+jsonp@3.0.0/node_modules/@eggjs/jsonp/dist/esm/config/config.default.js", + "callback": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+jsonp@3.0.0/node_modules/@eggjs/jsonp/dist/esm/config/config.default.js", + "csrf": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+jsonp@3.0.0/node_modules/@eggjs/jsonp/dist/esm/config/config.default.js" + }, + "onerror": { + "errorPageUrl": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-onerror@2.4.0/node_modules/egg-onerror/config/config.default.js", + "appErrorFilter": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-onerror@2.4.0/node_modules/egg-onerror/config/config.default.js", + "templatePath": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-onerror@2.4.0/node_modules/egg-onerror/config/config.default.js" + }, + "i18n": { + "defaultLocale": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+i18n@3.0.1/node_modules/@eggjs/i18n/dist/esm/config/config.default.js", + "dirs": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+i18n@3.0.1/node_modules/@eggjs/i18n/dist/esm/config/config.default.js", + "queryField": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+i18n@3.0.1/node_modules/@eggjs/i18n/dist/esm/config/config.default.js", + "cookieField": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+i18n@3.0.1/node_modules/@eggjs/i18n/dist/esm/config/config.default.js", + "cookieDomain": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+i18n@3.0.1/node_modules/@eggjs/i18n/dist/esm/config/config.default.js", + "cookieMaxAge": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+i18n@3.0.1/node_modules/@eggjs/i18n/dist/esm/config/config.default.js", + "localeAlias": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+i18n@3.0.1/node_modules/@eggjs/i18n/dist/esm/config/config.default.js", + "writeCookie": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+i18n@3.0.1/node_modules/@eggjs/i18n/dist/esm/config/config.default.js" + }, + "watcher": { + "type": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+watcher@4.0.4/node_modules/@eggjs/watcher/dist/esm/config/config.local.js", + "eventSources": { + "default": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+watcher@4.0.4/node_modules/@eggjs/watcher/dist/esm/config/config.default.js", + "development": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+watcher@4.0.4/node_modules/@eggjs/watcher/dist/esm/config/config.default.js" + } + }, + "customLogger": { + "scheduleLogger": { + "consoleLevel": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+schedule@5.0.2/node_modules/@eggjs/schedule/dist/esm/config/config.default.js", + "file": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+schedule@5.0.2/node_modules/@eggjs/schedule/dist/esm/config/config.default.js" + } + }, + "schedule": { + "directory": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+schedule@5.0.2/node_modules/@eggjs/schedule/dist/esm/config/config.default.js" + }, + "multipart": { + "mode": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-multipart@3.4.0/node_modules/egg-multipart/config/config.default.js", + "autoFields": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-multipart@3.4.0/node_modules/egg-multipart/config/config.default.js", + "defaultCharset": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-multipart@3.4.0/node_modules/egg-multipart/config/config.default.js", + "defaultParamCharset": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-multipart@3.4.0/node_modules/egg-multipart/config/config.default.js", + "fieldNameSize": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-multipart@3.4.0/node_modules/egg-multipart/config/config.default.js", + "fieldSize": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-multipart@3.4.0/node_modules/egg-multipart/config/config.default.js", + "fields": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-multipart@3.4.0/node_modules/egg-multipart/config/config.default.js", + "fileSize": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-multipart@3.4.0/node_modules/egg-multipart/config/config.default.js", + "files": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-multipart@3.4.0/node_modules/egg-multipart/config/config.default.js", + "fileExtensions": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-multipart@3.4.0/node_modules/egg-multipart/config/config.default.js", + "whitelist": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-multipart@3.4.0/node_modules/egg-multipart/config/config.default.js", + "allowArrayField": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-multipart@3.4.0/node_modules/egg-multipart/config/config.default.js", + "tmpdir": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-multipart@3.4.0/node_modules/egg-multipart/config/config.default.js", + "cleanSchedule": { + "cron": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-multipart@3.4.0/node_modules/egg-multipart/config/config.default.js", + "disable": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-multipart@3.4.0/node_modules/egg-multipart/config/config.default.js" + } + }, + "development": { + "watchDirs": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+development@4.0.0/node_modules/@eggjs/development/dist/esm/config/config.default.js", + "ignoreDirs": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+development@4.0.0/node_modules/@eggjs/development/dist/esm/config/config.default.js", + "fastReady": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+development@4.0.0/node_modules/@eggjs/development/dist/esm/config/config.default.js", + "reloadOnDebug": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+development@4.0.0/node_modules/@eggjs/development/dist/esm/config/config.default.js", + "overrideDefault": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+development@4.0.0/node_modules/@eggjs/development/dist/esm/config/config.default.js", + "overrideIgnore": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+development@4.0.0/node_modules/@eggjs/development/dist/esm/config/config.default.js" + }, + "logrotator": { + "filesRotateByHour": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-logrotator@3.2.0/node_modules/egg-logrotator/config/config.default.js", + "hourDelimiter": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-logrotator@3.2.0/node_modules/egg-logrotator/config/config.default.js", + "filesRotateBySize": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-logrotator@3.2.0/node_modules/egg-logrotator/config/config.default.js", + "maxFileSize": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-logrotator@3.2.0/node_modules/egg-logrotator/config/config.default.js", + "maxFiles": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-logrotator@3.2.0/node_modules/egg-logrotator/config/config.default.js", + "rotateDuration": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-logrotator@3.2.0/node_modules/egg-logrotator/config/config.default.js", + "maxDays": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-logrotator@3.2.0/node_modules/egg-logrotator/config/config.default.js" + }, + "static": { + "prefix": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+static@3.0.0/node_modules/@eggjs/static/dist/esm/config/config.default.js", + "dir": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+static@3.0.0/node_modules/@eggjs/static/dist/esm/config/config.default.js", + "dynamic": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+static@3.0.0/node_modules/@eggjs/static/dist/esm/config/config.default.js", + "preload": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+static@3.0.0/node_modules/@eggjs/static/dist/esm/config/config.default.js", + "buffer": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+static@3.0.0/node_modules/@eggjs/static/dist/esm/config/config.default.js", + "maxFiles": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+static@3.0.0/node_modules/@eggjs/static/dist/esm/config/config.default.js" + }, + "view": { + "root": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-view@2.1.4/node_modules/egg-view/config/config.default.js", + "cache": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-view@2.1.4/node_modules/egg-view/config/config.local.js", + "defaultExtension": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-view@2.1.4/node_modules/egg-view/config/config.default.js", + "defaultViewEngine": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-view@2.1.4/node_modules/egg-view/config/config.default.js", + "mapping": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-view@2.1.4/node_modules/egg-view/config/config.default.js" + }, + "env": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", + "name": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", + "cookies": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", + "proxy": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", + "maxIpsCount": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", + "maxProxyCount": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", + "protocolHeaders": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", + "ipHeaders": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", + "hostHeaders": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", + "pkg": { + "name": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", + "type": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js" + }, + "baseDir": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", + "HOME": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", + "rundir": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", + "dump": { + "ignore": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", + "timing": { + "slowBootActionMinDuration": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js" + } + }, + "confusedConfigurations": { + "bodyparser": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", + "notFound": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", + "sitefile": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", + "middlewares": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", + "httpClient": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js" + }, + "notfound": { + "enable": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", + "pageUrl": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js" + }, + "siteFile": { + "enable": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", + "/favicon.ico": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", + "cacheControl": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js" + }, + "bodyParser": { + "enable": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", + "encoding": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", + "formLimit": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", + "jsonLimit": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", + "textLimit": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", + "strict": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", + "queryString": { + "arrayLimit": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", + "depth": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", + "parameterLimit": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js" + }, + "onProtoPoisoning": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", + "onerror": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js" + }, + "logger": { + "dir": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", + "encoding": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", + "env": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", + "level": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", + "consoleLevel": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", + "disableConsoleAfterReady": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", + "outputJSON": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", + "buffer": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", + "appLogName": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", + "coreLogName": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", + "agentLogName": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", + "errorLogName": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", + "coreLogger": { + "consoleLevel": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.local.js" + }, + "allowDebugAtProd": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", + "enableFastContextLogger": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js" + }, + "httpclient": { + "request": { + "timeout": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js" + } + }, + "meta": { + "enable": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", + "logging": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js" + }, + "coreMiddleware": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", + "workerStartTimeout": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", + "serverTimeout": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", + "cluster": { + "listen": { + "path": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", + "port": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", + "hostname": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js" + } + }, + "clusterClient": { + "maxWaitTime": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", + "responseTimeout": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js" + } +} \ No newline at end of file diff --git a/example/hello/run/application_timing_95243.json b/example/hello/run/application_timing_95243.json new file mode 100644 index 0000000..94eb2ff --- /dev/null +++ b/example/hello/run/application_timing_95243.json @@ -0,0 +1,546 @@ +[ + { + "name": "Process Start", + "start": 1737425753730, + "pid": 95243, + "index": 0, + "end": 1737425754156, + "duration": 426 + }, + { + "name": "application Start", + "start": 1737425754156, + "pid": 95243, + "index": 1, + "end": 1737425754994, + "duration": 838 + }, + { + "name": "Before Start in load files", + "start": 1737425754159, + "pid": 95243, + "index": 2, + "end": 1737425754994, + "duration": 835 + }, + { + "name": "Load Plugin", + "start": 1737425754159, + "pid": 95243, + "index": 3, + "end": 1737425754798, + "duration": 639 + }, + { + "name": "Load Config", + "start": 1737425754798, + "pid": 95243, + "index": 4, + "end": 1737425754827, + "duration": 29 + }, + { + "name": "Require(0) config/config.default.ts", + "start": 1737425754798, + "pid": 95243, + "index": 5, + "end": 1737425754799, + "duration": 1 + }, + { + "name": "Require(1) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+session@4.0.0/node_modules/@eggjs/session/dist/esm/config/config.default.js", + "start": 1737425754800, + "pid": 95243, + "index": 6, + "end": 1737425754800, + "duration": 0 + }, + { + "name": "Require(2) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js", + "start": 1737425754800, + "pid": 95243, + "index": 7, + "end": 1737425754804, + "duration": 4 + }, + { + "name": "Require(3) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+jsonp@3.0.0/node_modules/@eggjs/jsonp/dist/esm/config/config.default.js", + "start": 1737425754804, + "pid": 95243, + "index": 8, + "end": 1737425754804, + "duration": 0 + }, + { + "name": "Require(4) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-onerror@2.4.0/node_modules/egg-onerror/config/config.default.js", + "start": 1737425754804, + "pid": 95243, + "index": 9, + "end": 1737425754805, + "duration": 1 + }, + { + "name": "Require(5) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+i18n@3.0.1/node_modules/@eggjs/i18n/dist/esm/config/config.default.js", + "start": 1737425754805, + "pid": 95243, + "index": 10, + "end": 1737425754805, + "duration": 0 + }, + { + "name": "Require(6) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+watcher@4.0.4/node_modules/@eggjs/watcher/dist/esm/config/config.default.js", + "start": 1737425754805, + "pid": 95243, + "index": 11, + "end": 1737425754806, + "duration": 1 + }, + { + "name": "Require(7) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+schedule@5.0.2/node_modules/@eggjs/schedule/dist/esm/config/config.default.js", + "start": 1737425754806, + "pid": 95243, + "index": 12, + "end": 1737425754806, + "duration": 0 + }, + { + "name": "Require(8) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-multipart@3.4.0/node_modules/egg-multipart/config/config.default.js", + "start": 1737425754807, + "pid": 95243, + "index": 13, + "end": 1737425754807, + "duration": 0 + }, + { + "name": "Require(9) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+development@4.0.0/node_modules/@eggjs/development/dist/esm/config/config.default.js", + "start": 1737425754807, + "pid": 95243, + "index": 14, + "end": 1737425754808, + "duration": 1 + }, + { + "name": "Require(10) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-logrotator@3.2.0/node_modules/egg-logrotator/config/config.default.js", + "start": 1737425754808, + "pid": 95243, + "index": 15, + "end": 1737425754808, + "duration": 0 + }, + { + "name": "Require(11) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+static@3.0.0/node_modules/@eggjs/static/dist/esm/config/config.default.js", + "start": 1737425754808, + "pid": 95243, + "index": 16, + "end": 1737425754809, + "duration": 1 + }, + { + "name": "Require(12) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-view@2.1.4/node_modules/egg-view/config/config.default.js", + "start": 1737425754809, + "pid": 95243, + "index": 17, + "end": 1737425754810, + "duration": 1 + }, + { + "name": "Require(13) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", + "start": 1737425754811, + "pid": 95243, + "index": 18, + "end": 1737425754811, + "duration": 0 + }, + { + "name": "Require(14) config/config.default.ts", + "start": 1737425754812, + "pid": 95243, + "index": 19, + "end": 1737425754812, + "duration": 0 + }, + { + "name": "Require(15) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.local.js", + "start": 1737425754812, + "pid": 95243, + "index": 20, + "end": 1737425754813, + "duration": 1 + }, + { + "name": "Require(16) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+watcher@4.0.4/node_modules/@eggjs/watcher/dist/esm/config/config.local.js", + "start": 1737425754821, + "pid": 95243, + "index": 21, + "end": 1737425754824, + "duration": 3 + }, + { + "name": "Require(17) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-view@2.1.4/node_modules/egg-view/config/config.local.js", + "start": 1737425754825, + "pid": 95243, + "index": 22, + "end": 1737425754826, + "duration": 1 + }, + { + "name": "Require(18) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.local.js", + "start": 1737425754826, + "pid": 95243, + "index": 23, + "end": 1737425754827, + "duration": 1 + }, + { + "name": "Load extend/application.js", + "start": 1737425754827, + "pid": 95243, + "index": 24, + "end": 1737425754845, + "duration": 18 + }, + { + "name": "Require(19) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+session@4.0.0/node_modules/@eggjs/session/dist/esm/app/extend/application.js", + "start": 1737425754827, + "pid": 95243, + "index": 25, + "end": 1737425754828, + "duration": 1 + }, + { + "name": "Require(20) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/app/extend/application.js", + "start": 1737425754828, + "pid": 95243, + "index": 26, + "end": 1737425754828, + "duration": 0 + }, + { + "name": "Require(21) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+jsonp@3.0.0/node_modules/@eggjs/jsonp/dist/esm/app/extend/application.js", + "start": 1737425754828, + "pid": 95243, + "index": 27, + "end": 1737425754830, + "duration": 2 + }, + { + "name": "Require(22) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+i18n@3.0.1/node_modules/@eggjs/i18n/dist/esm/app/extend/application.js", + "start": 1737425754830, + "pid": 95243, + "index": 28, + "end": 1737425754831, + "duration": 1 + }, + { + "name": "Require(23) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+schedule@5.0.2/node_modules/@eggjs/schedule/dist/esm/app/extend/application.js", + "start": 1737425754831, + "pid": 95243, + "index": 29, + "end": 1737425754835, + "duration": 4 + }, + { + "name": "Require(24) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-logrotator@3.2.0/node_modules/egg-logrotator/app/extend/application.js", + "start": 1737425754836, + "pid": 95243, + "index": 30, + "end": 1737425754839, + "duration": 3 + }, + { + "name": "Require(25) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-view@2.1.4/node_modules/egg-view/app/extend/application.js", + "start": 1737425754840, + "pid": 95243, + "index": 31, + "end": 1737425754841, + "duration": 1 + }, + { + "name": "Load extend/request.js", + "start": 1737425754845, + "pid": 95243, + "index": 32, + "end": 1737425754858, + "duration": 13 + }, + { + "name": "Require(26) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/app/extend/request.js", + "start": 1737425754847, + "pid": 95243, + "index": 33, + "end": 1737425754848, + "duration": 1 + }, + { + "name": "Load extend/response.js", + "start": 1737425754858, + "pid": 95243, + "index": 34, + "end": 1737425754871, + "duration": 13 + }, + { + "name": "Require(27) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/app/extend/response.js", + "start": 1737425754858, + "pid": 95243, + "index": 35, + "end": 1737425754860, + "duration": 2 + }, + { + "name": "Require(28) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/app/extend/response.js", + "start": 1737425754863, + "pid": 95243, + "index": 36, + "end": 1737425754867, + "duration": 4 + }, + { + "name": "Load extend/context.js", + "start": 1737425754871, + "pid": 95243, + "index": 37, + "end": 1737425754886, + "duration": 15 + }, + { + "name": "Require(29) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/app/extend/context.js", + "start": 1737425754872, + "pid": 95243, + "index": 38, + "end": 1737425754872, + "duration": 0 + }, + { + "name": "Require(30) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+jsonp@3.0.0/node_modules/@eggjs/jsonp/dist/esm/app/extend/context.js", + "start": 1737425754872, + "pid": 95243, + "index": 39, + "end": 1737425754875, + "duration": 3 + }, + { + "name": "Require(31) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+i18n@3.0.1/node_modules/@eggjs/i18n/dist/esm/app/extend/context.js", + "start": 1737425754875, + "pid": 95243, + "index": 40, + "end": 1737425754876, + "duration": 1 + }, + { + "name": "Require(32) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-multipart@3.4.0/node_modules/egg-multipart/app/extend/context.js", + "start": 1737425754877, + "pid": 95243, + "index": 41, + "end": 1737425754880, + "duration": 3 + }, + { + "name": "Require(33) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-view@2.1.4/node_modules/egg-view/app/extend/context.js", + "start": 1737425754881, + "pid": 95243, + "index": 42, + "end": 1737425754882, + "duration": 1 + }, + { + "name": "Require(34) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/app/extend/context.js", + "start": 1737425754882, + "pid": 95243, + "index": 43, + "end": 1737425754882, + "duration": 0 + }, + { + "name": "Load extend/helper.js", + "start": 1737425754886, + "pid": 95243, + "index": 44, + "end": 1737425754901, + "duration": 15 + }, + { + "name": "Require(35) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/app/extend/helper.js", + "start": 1737425754886, + "pid": 95243, + "index": 45, + "end": 1737425754892, + "duration": 6 + }, + { + "name": "Require(36) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/app/extend/helper.js", + "start": 1737425754894, + "pid": 95243, + "index": 46, + "end": 1737425754895, + "duration": 1 + }, + { + "name": "Load app.js", + "start": 1737425754901, + "pid": 95243, + "index": 47, + "end": 1737425754920, + "duration": 19 + }, + { + "name": "Require(37) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+session@4.0.0/node_modules/@eggjs/session/dist/esm/app.js", + "start": 1737425754901, + "pid": 95243, + "index": 48, + "end": 1737425754904, + "duration": 3 + }, + { + "name": "Require(38) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/app.js", + "start": 1737425754904, + "pid": 95243, + "index": 49, + "end": 1737425754905, + "duration": 1 + }, + { + "name": "Require(39) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-onerror@2.4.0/node_modules/egg-onerror/app.js", + "start": 1737425754905, + "pid": 95243, + "index": 50, + "end": 1737425754909, + "duration": 4 + }, + { + "name": "Require(40) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+i18n@3.0.1/node_modules/@eggjs/i18n/dist/esm/app.js", + "start": 1737425754909, + "pid": 95243, + "index": 51, + "end": 1737425754914, + "duration": 5 + }, + { + "name": "Require(41) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+watcher@4.0.4/node_modules/@eggjs/watcher/dist/esm/app.js", + "start": 1737425754914, + "pid": 95243, + "index": 52, + "end": 1737425754915, + "duration": 1 + }, + { + "name": "Require(42) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+schedule@5.0.2/node_modules/@eggjs/schedule/dist/esm/app.js", + "start": 1737425754915, + "pid": 95243, + "index": 53, + "end": 1737425754916, + "duration": 1 + }, + { + "name": "Require(43) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-multipart@3.4.0/node_modules/egg-multipart/app.js", + "start": 1737425754916, + "pid": 95243, + "index": 54, + "end": 1737425754916, + "duration": 0 + }, + { + "name": "Require(44) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+development@4.0.0/node_modules/@eggjs/development/dist/esm/app.js", + "start": 1737425754916, + "pid": 95243, + "index": 55, + "end": 1737425754917, + "duration": 1 + }, + { + "name": "Require(45) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-logrotator@3.2.0/node_modules/egg-logrotator/app.js", + "start": 1737425754917, + "pid": 95243, + "index": 56, + "end": 1737425754917, + "duration": 0 + }, + { + "name": "Require(46) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+static@3.0.0/node_modules/@eggjs/static/dist/esm/app.js", + "start": 1737425754917, + "pid": 95243, + "index": 57, + "end": 1737425754918, + "duration": 1 + }, + { + "name": "Did Load in /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+i18n@3.0.1/node_modules/@eggjs/i18n/dist/esm/app.js:didLoad", + "start": 1737425754926, + "pid": 95243, + "index": 58, + "end": 1737425754940, + "duration": 14 + }, + { + "name": "Did Load in /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+watcher@4.0.4/node_modules/@eggjs/watcher/dist/esm/app.js:didLoad", + "start": 1737425754926, + "pid": 95243, + "index": 59, + "end": 1737425754937, + "duration": 11 + }, + { + "name": "Load Service", + "start": 1737425754926, + "pid": 95243, + "index": 60, + "end": 1737425754929, + "duration": 3 + }, + { + "name": "Load \"service\" to Context", + "start": 1737425754927, + "pid": 95243, + "index": 61, + "end": 1737425754929, + "duration": 2 + }, + { + "name": "Load Middleware", + "start": 1737425754929, + "pid": 95243, + "index": 62, + "end": 1737425754966, + "duration": 37 + }, + { + "name": "Load \"middlewares\" to Application", + "start": 1737425754929, + "pid": 95243, + "index": 63, + "end": 1737425754965, + "duration": 36 + }, + { + "name": "Load Controller", + "start": 1737425754966, + "pid": 95243, + "index": 64, + "end": 1737425754967, + "duration": 1 + }, + { + "name": "Load \"controller\" to Application", + "start": 1737425754966, + "pid": 95243, + "index": 65, + "end": 1737425754967, + "duration": 1 + }, + { + "name": "Load Router", + "start": 1737425754967, + "pid": 95243, + "index": 66, + "end": 1737425754994, + "duration": 27 + }, + { + "name": "Require(47) app/router.ts", + "start": 1737425754967, + "pid": 95243, + "index": 67, + "end": 1737425754993, + "duration": 26 + } +] \ No newline at end of file diff --git a/example/hello/run/router.json b/example/hello/run/router.json new file mode 100644 index 0000000..8b81f88 --- /dev/null +++ b/example/hello/run/router.json @@ -0,0 +1,14 @@ +[ + { + "methods": [ + "HEAD", + "GET" + ], + "paramNames": [], + "path": "/", + "regexp": "/^(?:\\/(?=$))?$/", + "stack": [ + "wrappedController" + ] + } +] \ No newline at end of file diff --git a/example/hello/start.ts b/example/hello/start.ts new file mode 100644 index 0000000..0744c59 --- /dev/null +++ b/example/hello/start.ts @@ -0,0 +1,12 @@ +import path from 'node:path'; +import { fileURLToPath } from 'node:url'; +import { startEgg } from 'egg'; + +const __filename = fileURLToPath(import.meta.url); +const __dirname = path.dirname(__filename); + +const app = await startEgg({ + baseDir: __dirname, +}); + +console.log(`Server started at http://localhost:${app.config.cluster.listen.port}`); diff --git a/example/hello/tsconfig.json b/example/hello/tsconfig.json new file mode 100644 index 0000000..ff41b73 --- /dev/null +++ b/example/hello/tsconfig.json @@ -0,0 +1,10 @@ +{ + "extends": "@eggjs/tsconfig", + "compilerOptions": { + "strict": true, + "noImplicitAny": true, + "target": "ES2022", + "module": "NodeNext", + "moduleResolution": "NodeNext" + } +} diff --git a/example/hello/typings/index.d.ts b/example/hello/typings/index.d.ts new file mode 100644 index 0000000..9587dd5 --- /dev/null +++ b/example/hello/typings/index.d.ts @@ -0,0 +1,4 @@ +// make sure to import egg typings and let typescript know about it +// @see https://github.com/whxaxes/blog/issues/11 +// and https://www.typescriptlang.org/docs/handbook/declaration-merging.html +import '../../../src/index.ts'; diff --git a/index.d.ts b/index.d.ts deleted file mode 100644 index d476da0..0000000 --- a/index.d.ts +++ /dev/null @@ -1,25 +0,0 @@ -import { Redis, RedisOptions } from "ioredis"; - -interface ClusterOptions extends RedisOptions { - cluster?: boolean; - nodes?: RedisOptions[]; -} - -interface EggRedisOptions { - Redis?: Redis; - default?: object; - app?: boolean; - agent?: boolean; - client?: ClusterOptions; - clients?: Record; -} - -declare module 'egg' { - interface Application { - redis: Redis & Singleton; - } - - interface EggAppConfig { - redis: EggRedisOptions; - } -} diff --git a/lib/redis.js b/lib/redis.js deleted file mode 100644 index 9b4dc94..0000000 --- a/lib/redis.js +++ /dev/null @@ -1,73 +0,0 @@ -'use strict'; - -const assert = require('assert'); -const awaitFirst = require('await-first'); - -module.exports = app => { - app.addSingleton('redis', createClient); -}; - -let count = 0; -function createClient(config, app) { - const Redis = app.config.redis.Redis || require('ioredis'); - let client; - - if (config.cluster === true) { - assert(config.nodes && config.nodes.length !== 0, '[egg-redis] cluster nodes configuration is required when use cluster redis'); - - config.nodes.forEach(client => { - assert(client.host && client.port, `[egg-redis] 'host: ${client.host}', 'port: ${client.port}' are required on config`); - }); - app.coreLogger.info('[egg-redis] cluster connecting'); - client = new Redis.Cluster(config.nodes, config); - } else if (config.sentinels) { - assert(config.sentinels && config.sentinels.length !== 0, '[egg-redis] sentinels configuration is required when use redis sentinel'); - - config.sentinels.forEach(sentinel => { - assert(sentinel.host && sentinel.port, - `[egg-redis] 'host: ${sentinel.host}', 'port: ${sentinel.port}' are required on config`); - }); - - assert(config.name && config.password !== undefined && config.db !== undefined, - `[egg-redis] 'name of master: ${config.name}', 'password: ${config.password}', 'db: ${config.db}' are required on config`); - - app.coreLogger.info('[egg-redis] sentinel connecting start'); - client = new Redis(config); - } else { - assert((config.host && config.port && config.password !== undefined && config.db !== undefined) || config.path, - `[egg-redis] 'host: ${config.host}', 'port: ${config.port}', 'password: ${config.password}', 'db: ${config.db}' or 'path:${config.path}' are required on config`); - if (config.host) { - app.coreLogger.info('[egg-redis] server connecting redis://:***@%s:%s/%s', - config.host, config.port, config.db); - } else { - app.coreLogger.info('[egg-redis] server connecting %s', - config.path || config); - } - - client = new Redis(config); - } - - client.on('connect', () => { - app.coreLogger.info('[egg-redis] client connect success'); - }); - client.on('error', err => { - app.coreLogger.error('[egg-redis] client error: %s', err); - app.coreLogger.error(err); - }); - - app.beforeStart(async () => { - const index = count++; - if (config.weakDependent) { - app.coreLogger.info(`[egg-redis] instance[${index}] is weak dependent and won't block app start`); - client.once('ready', () => { - app.coreLogger.info(`[egg-redis] instance[${index}] status OK`); - }); - return; - } - - await awaitFirst(client, [ 'ready', 'error' ]); - app.coreLogger.info(`[egg-redis] instance[${index}] status OK, client ready`); - }); - - return client; -} diff --git a/package.json b/package.json index 1f524fc..ec3aa13 100644 --- a/package.json +++ b/package.json @@ -1,53 +1,26 @@ { - "name": "egg-redis", + "name": "@eggjs/redis", "version": "2.6.1", - "description": "Redis plugin for egg", + "publishConfig": { + "access": "public" + }, + "description": "Valkey / Redis plugin for egg", "eggPlugin": { - "name": "redis" + "name": "redis", + "exports": { + "import": "./dist/esm", + "require": "./dist/commonjs", + "typescript": "./src" + } }, - "files": [ - "index.d.ts", - "app.js", - "agent.js", - "lib", - "config" - ], - "types": "./index.d.ts", "keywords": [ "egg", "eggPlugin", "egg-plugin", "redis", + "Valkey", "database" ], - "dependencies": { - "@types/ioredis": "^4.0.10", - "await-first": "^1.0.0", - "ioredis": "^4.9.0" - }, - "devDependencies": { - "@types/node": "^22.10.7", - "autod": "^3.1.0", - "egg": "^3.30.1", - "egg-bin": "^6.13.0", - "egg-mock": "^5.15.1", - "eslint": "^5.16.0", - "eslint-config-egg": "^7.3.1", - "supertest": "^4.0.2", - "typescript": "^5.7.3", - "urllib": "^4.6.11", - "utility": "^1.9.0" - }, - "engines": { - "node": ">=6.0.0" - }, - "scripts": { - "test": "npm run lint -- --fix && npm run test-local", - "test-local": "egg-bin test --ts false", - "cov": "egg-bin cov --ts false", - "lint": "eslint .", - "ci": "npm run lint && npm run cov" - }, "repository": { "type": "git", "url": "git+https://github.com/eggjs/redis.git" @@ -57,5 +30,64 @@ }, "homepage": "https://github.com/eggjs/redis#readme", "author": "jtyjty99999", - "license": "MIT" + "license": "MIT", + "engines": { + "node": ">= 18.19.0" + }, + "dependencies": { + "@eggjs/core": "^6.3.0", + "ioredis": "^5.4.2" + }, + "devDependencies": { + "@arethetypeswrong/cli": "^0.17.1", + "@eggjs/bin": "7", + "@eggjs/mock": "^6.0.5", + "@eggjs/tsconfig": "1", + "@types/mocha": "10", + "@types/node": "22", + "egg": "^4.0.3", + "eslint": "8", + "eslint-config-egg": "14", + "rimraf": "6", + "tshy": "3", + "tshy-after": "1", + "typescript": "5" + }, + "scripts": { + "lint": "eslint --cache src test --ext .ts", + "pretest": "npm run clean && npm run lint -- --fix", + "test": "egg-bin test", + "preci": "npm run clean && npm run lint", + "ci": "egg-bin cov", + "postci": "npm run prepublishOnly && npm run clean", + "clean": "rimraf dist", + "prepublishOnly": "tshy && tshy-after && attw --pack" + }, + "type": "module", + "tshy": { + "exports": { + ".": "./src/index.ts", + "./package.json": "./package.json" + } + }, + "exports": { + ".": { + "import": { + "types": "./dist/esm/index.d.ts", + "default": "./dist/esm/index.js" + }, + "require": { + "types": "./dist/commonjs/index.d.ts", + "default": "./dist/commonjs/index.js" + } + }, + "./package.json": "./package.json" + }, + "files": [ + "dist", + "src" + ], + "types": "./dist/commonjs/index.d.ts", + "main": "./dist/commonjs/index.js", + "module": "./dist/esm/index.js" } diff --git a/src/agent.ts b/src/agent.ts new file mode 100644 index 0000000..6336ee3 --- /dev/null +++ b/src/agent.ts @@ -0,0 +1,3 @@ +import { RedisBoot } from './lib/redis.js'; + +export default RedisBoot; diff --git a/src/app.ts b/src/app.ts new file mode 100644 index 0000000..6336ee3 --- /dev/null +++ b/src/app.ts @@ -0,0 +1,3 @@ +import { RedisBoot } from './lib/redis.js'; + +export default RedisBoot; diff --git a/src/config/config.default.ts b/src/config/config.default.ts new file mode 100644 index 0000000..0db6dd8 --- /dev/null +++ b/src/config/config.default.ts @@ -0,0 +1,111 @@ +import type { RedisOptions, ClusterOptions } from 'ioredis'; + +export interface RedisClientOptions extends RedisOptions { + /** + * Whether to enable weakDependent mode, the redis client start will not block the application start + * + * Default to `undefined` + */ + weakDependent?: boolean; +} + +export interface RedisClusterOptions extends ClusterOptions { + cluster: true; + nodes: RedisClientOptions[]; +} + +export interface RedisConfig { + /** + * Default redis client config + * + * Default to `{}` + */ + default: RedisClientOptions; + /** + * Single Redis or Cluster Redis config + */ + client?: RedisClientOptions | RedisClusterOptions; + /** + * Multi Redis config + */ + clients?: Record; + /** + * redis client will try to use TIME command to detect client is ready or not + * if your redis server not support TIME command, please set this config to false + * see https://redis.io/commands/time + * + * Default to `true` + */ + supportTimeCommand: boolean; + /** + * Whether to enable redis for `app` + * + * Default to `true` + */ + app: boolean; + /** + * Whether to enable redis for `agent` + * + * Default to `false` + */ + agent: boolean; + /** + * Customize iovalkey version, only set when you needed + * + * Default to `undefined`, which means using the built-in ioredis + */ + Redis?: any; +} + +export default { + redis: { + default: {}, + app: true, + agent: false, + supportTimeCommand: true, + // Single Redis + // client: { + // host: 'host', + // port: 'port', + // family: 'user', + // password: 'password', + // db: 'db', + // }, + // + // Cluster Redis + // client: { + // cluster: true, + // nodes: [{ + // host: 'host', + // port: 'port', + // family: 'user', + // password: 'password', + // db: 'db', + // }, { + // host: 'host', + // port: 'port', + // family: 'user', + // password: 'password', + // db: 'db', + // }, + // ]}, + // + // Multi Redis + // clients: { + // instance1: { + // host: 'host', + // port: 'port', + // family: 'user', + // password: 'password', + // db: 'db', + // }, + // instance2: { + // host: 'host', + // port: 'port', + // family: 'user', + // password: 'password', + // db: 'db', + // }, + // }, + } as RedisConfig, +}; diff --git a/src/index.ts b/src/index.ts new file mode 100644 index 0000000..ce5fb25 --- /dev/null +++ b/src/index.ts @@ -0,0 +1 @@ +import './types.js'; diff --git a/src/lib/redis.ts b/src/lib/redis.ts new file mode 100644 index 0000000..3af4517 --- /dev/null +++ b/src/lib/redis.ts @@ -0,0 +1,90 @@ +import assert from 'node:assert'; +import { once } from 'node:events'; +import { Redis } from 'ioredis'; +import type { ILifecycleBoot, EggCore } from '@eggjs/core'; +import type { RedisClusterOptions, RedisClientOptions } from '../config/config.default.js'; + +export class RedisBoot implements ILifecycleBoot { + constructor(private readonly app: EggCore) { + // empty + } + async didLoad() { + const app = this.app; + if (app.type === 'application' && app.config.redis.app) { + app.addSingleton('redis', createClient); + } else if (app.type === 'agent' && app.config.redis.agent) { + app.addSingleton('redis', createClient); + } + } +} + +let count = 0; +function createClient(options: RedisClusterOptions | RedisClientOptions, app: EggCore) { + const RedisClass: typeof Redis = app.config.redis.Redis ?? Redis; + let client; + + if ('cluster' in options && options.cluster === true) { + const config = options as RedisClusterOptions; + assert(config.nodes && config.nodes.length !== 0, '[@eggjs/redis] cluster nodes configuration is required when use cluster redis'); + + config.nodes.forEach(client => { + assert(client.host && client.port, `[@eggjs/redis] 'host: ${client.host}', 'port: ${client.port}' are required on config`); + }); + app.coreLogger.info('[@eggjs/redis] cluster connecting'); + client = new RedisClass.Cluster(config.nodes, config as any); + } else if ('sentinels' in options && options.sentinels) { + const config = options as RedisClientOptions; + assert(config.sentinels && config.sentinels.length !== 0, '[@eggjs/redis] sentinels configuration is required when use redis sentinel'); + + config.sentinels.forEach(sentinel => { + assert(sentinel.host && sentinel.port, + `[@eggjs/redis] 'host: ${sentinel.host}', 'port: ${sentinel.port}' are required on config`); + }); + + assert(config.name && config.password !== undefined && config.db !== undefined, + `[@eggjs/redis] 'name of master: ${config.name}', 'password: ${config.password}', 'db: ${config.db}' are required on config`); + + app.coreLogger.info('[@eggjs/redis] sentinel connecting start'); + client = new RedisClass(config as any); + } else { + const config = options as RedisClientOptions; + assert((config.host && config.port && config.password !== undefined && config.db !== undefined) || config.path, + `[@eggjs/redis] 'host: ${config.host}', 'port: ${config.port}', 'password: ${config.password}', 'db: ${config.db}' or 'path:${config.path}' are required on config`); + if (config.host) { + app.coreLogger.info('[@eggjs/redis] server connecting redis://:***@%s:%s/%s', + config.host, config.port, config.db); + } else { + app.coreLogger.info('[@eggjs/redis] server connecting %s', + config.path || config); + } + + client = new RedisClass(config as any); + } + + client.on('connect', () => { + app.coreLogger.info('[@eggjs/redis] client connect success'); + }); + client.on('error', err => { + app.coreLogger.error('[@eggjs/redis] client error: %s', err); + app.coreLogger.error(err); + }); + + const index = count++; + app.lifecycle.registerBeforeStart(async () => { + if ('weakDependent' in options && options.weakDependent) { + app.coreLogger.info(`[@eggjs/redis] instance[${index}] is weak dependent and won't block app start`); + client.once('ready', () => { + app.coreLogger.info(`[@eggjs/redis] instance[${index}] status OK`); + }); + return; + } + + await Promise.race([ + once(client, 'ready'), + once(client, 'error'), + ]); + app.coreLogger.info(`[@eggjs/redis] instance[${index}] status OK, client ready`); + }, `[@eggjs/redis] instance[${index}] start check`); + + return client; +} diff --git a/src/types.ts b/src/types.ts new file mode 100644 index 0000000..14a917e --- /dev/null +++ b/src/types.ts @@ -0,0 +1,14 @@ +import type { Singleton } from '@eggjs/core'; +import type { Redis } from 'ioredis'; +import type { RedisConfig } from './config/config.default.js'; + +declare module '@eggjs/core' { + // add EggAppConfig overrides types + interface EggAppConfig { + redis: RedisConfig; + } + + interface EggCore { + redis: Redis & Singleton; + } +} diff --git a/src/typings/index.d.ts b/src/typings/index.d.ts new file mode 100644 index 0000000..53c65c7 --- /dev/null +++ b/src/typings/index.d.ts @@ -0,0 +1,4 @@ +// make sure to import egg typings and let typescript know about it +// @see https://github.com/whxaxes/blog/issues/11 +// and https://www.typescriptlang.org/docs/handbook/declaration-merging.html +import 'egg'; diff --git a/test/fixtures/apps/redisapp-customize/app/controller/home.js b/test/fixtures/apps/redisapp-customize/app/controller/home.js index 13ccead..d77ceb9 100644 --- a/test/fixtures/apps/redisapp-customize/app/controller/home.js +++ b/test/fixtures/apps/redisapp-customize/app/controller/home.js @@ -1,11 +1,9 @@ -'use strict'; - module.exports = app => { return class HomeController extends app.Controller { - * index() { + async index() { const { ctx, app } = this; - yield app.redis.set('foo', 'bar'); - ctx.body = yield app.redis.get('foo'); + await app.redis.set('foo', 'bar'); + ctx.body = await app.redis.get('foo'); } }; }; diff --git a/test/fixtures/apps/redisapp-disable-offline-queue/app/controller/home.js b/test/fixtures/apps/redisapp-disable-offline-queue/app/controller/home.js index 13ccead..d77ceb9 100644 --- a/test/fixtures/apps/redisapp-disable-offline-queue/app/controller/home.js +++ b/test/fixtures/apps/redisapp-disable-offline-queue/app/controller/home.js @@ -1,11 +1,9 @@ -'use strict'; - module.exports = app => { return class HomeController extends app.Controller { - * index() { + async index() { const { ctx, app } = this; - yield app.redis.set('foo', 'bar'); - ctx.body = yield app.redis.get('foo'); + await app.redis.set('foo', 'bar'); + ctx.body = await app.redis.get('foo'); } }; }; diff --git a/test/fixtures/apps/redisapp-supportTimeCommand-false/app/controller/home.js b/test/fixtures/apps/redisapp-supportTimeCommand-false/app/controller/home.js index 13ccead..d77ceb9 100644 --- a/test/fixtures/apps/redisapp-supportTimeCommand-false/app/controller/home.js +++ b/test/fixtures/apps/redisapp-supportTimeCommand-false/app/controller/home.js @@ -1,11 +1,9 @@ -'use strict'; - module.exports = app => { return class HomeController extends app.Controller { - * index() { + async index() { const { ctx, app } = this; - yield app.redis.set('foo', 'bar'); - ctx.body = yield app.redis.get('foo'); + await app.redis.set('foo', 'bar'); + ctx.body = await app.redis.get('foo'); } }; }; diff --git a/test/fixtures/apps/redisapp-weakdependent/app/controller/home.js b/test/fixtures/apps/redisapp-weakdependent/app/controller/home.js index 13ccead..d77ceb9 100644 --- a/test/fixtures/apps/redisapp-weakdependent/app/controller/home.js +++ b/test/fixtures/apps/redisapp-weakdependent/app/controller/home.js @@ -1,11 +1,9 @@ -'use strict'; - module.exports = app => { return class HomeController extends app.Controller { - * index() { + async index() { const { ctx, app } = this; - yield app.redis.set('foo', 'bar'); - ctx.body = yield app.redis.get('foo'); + await app.redis.set('foo', 'bar'); + ctx.body = await app.redis.get('foo'); } }; }; diff --git a/test/fixtures/apps/redisapp-weakdependent/config/config.js b/test/fixtures/apps/redisapp-weakdependent/config/config.js index 75d4b76..ed3bdef 100644 --- a/test/fixtures/apps/redisapp-weakdependent/config/config.js +++ b/test/fixtures/apps/redisapp-weakdependent/config/config.js @@ -1,5 +1,3 @@ -'use strict'; - exports.redis = { client: { weakDependent: true, diff --git a/test/fixtures/apps/redisapp/app/controller/home.js b/test/fixtures/apps/redisapp/app/controller/home.js index 13ccead..d77ceb9 100644 --- a/test/fixtures/apps/redisapp/app/controller/home.js +++ b/test/fixtures/apps/redisapp/app/controller/home.js @@ -1,11 +1,9 @@ -'use strict'; - module.exports = app => { return class HomeController extends app.Controller { - * index() { + async index() { const { ctx, app } = this; - yield app.redis.set('foo', 'bar'); - ctx.body = yield app.redis.get('foo'); + await app.redis.set('foo', 'bar'); + ctx.body = await app.redis.get('foo'); } }; }; diff --git a/test/fixtures/apps/redisclusterapp/app/controller/home.js b/test/fixtures/apps/redisclusterapp/app/controller/home.js index 13ccead..d77ceb9 100644 --- a/test/fixtures/apps/redisclusterapp/app/controller/home.js +++ b/test/fixtures/apps/redisclusterapp/app/controller/home.js @@ -1,11 +1,9 @@ -'use strict'; - module.exports = app => { return class HomeController extends app.Controller { - * index() { + async index() { const { ctx, app } = this; - yield app.redis.set('foo', 'bar'); - ctx.body = yield app.redis.get('foo'); + await app.redis.set('foo', 'bar'); + ctx.body = await app.redis.get('foo'); } }; }; diff --git a/test/fixtures/apps/redispathapp/app/controller/home.js b/test/fixtures/apps/redispathapp/app/controller/home.js index 13ccead..d77ceb9 100644 --- a/test/fixtures/apps/redispathapp/app/controller/home.js +++ b/test/fixtures/apps/redispathapp/app/controller/home.js @@ -1,11 +1,9 @@ -'use strict'; - module.exports = app => { return class HomeController extends app.Controller { - * index() { + async index() { const { ctx, app } = this; - yield app.redis.set('foo', 'bar'); - ctx.body = yield app.redis.get('foo'); + await app.redis.set('foo', 'bar'); + ctx.body = await app.redis.get('foo'); } }; }; diff --git a/test/fixtures/apps/redissentinelapp/app/controller/home.js b/test/fixtures/apps/redissentinelapp/app/controller/home.js index 13ccead..d77ceb9 100644 --- a/test/fixtures/apps/redissentinelapp/app/controller/home.js +++ b/test/fixtures/apps/redissentinelapp/app/controller/home.js @@ -1,11 +1,9 @@ -'use strict'; - module.exports = app => { return class HomeController extends app.Controller { - * index() { + async index() { const { ctx, app } = this; - yield app.redis.set('foo', 'bar'); - ctx.body = yield app.redis.get('foo'); + await app.redis.set('foo', 'bar'); + ctx.body = await app.redis.get('foo'); } }; }; diff --git a/test/fixtures/apps/ts-multi/redisapp-ts/app/controller/home.ts b/test/fixtures/apps/ts-multi/redisapp-ts/app/controller/home.ts index ca8071a..afb2f60 100644 --- a/test/fixtures/apps/ts-multi/redisapp-ts/app/controller/home.ts +++ b/test/fixtures/apps/ts-multi/redisapp-ts/app/controller/home.ts @@ -1,17 +1,23 @@ -import {Controller, Singleton} from 'egg'; +import { Controller, Singleton } from 'egg'; import { Redis } from 'ioredis'; declare module 'egg' { - interface IController { - home: HomeController; - } + interface IController { + home: HomeController; + } + + interface EggApplicationCore { + redis: Redis & Singleton; + } +} + +export default class HomeController extends Controller { + async index() { + const { ctx,app } = this; + const redis = app.redis.get('cache') as unknown as Redis; + await redis.set('foo', 'bar'); + const redis2 = app.redis.getSingletonInstance('cache'); + await redis2.set('foo2', 'bar2'); + ctx.body = await redis.get('foo'); } - - export default class HomeController extends Controller { - async index() { - const { ctx,app } = this; - const redis = (app.redis as Singleton).get('cache'); - await redis.set('foo', 'bar'); - ctx.body = await redis.get('foo'); - } } diff --git a/test/fixtures/apps/ts-multi/tsconfig.json b/test/fixtures/apps/ts-multi/tsconfig.json index 75cb28f..ff41b73 100644 --- a/test/fixtures/apps/ts-multi/tsconfig.json +++ b/test/fixtures/apps/ts-multi/tsconfig.json @@ -1,16 +1,10 @@ { - "compilerOptions": { - "target": "es2017", - "module": "commonjs", - "baseUrl": ".", - "strict": true, - "lib": [ - "es2017" - ], - "skipLibCheck": false, - "noImplicitAny": false - }, - "include": [ - "../../../../**/*" - ] + "extends": "@eggjs/tsconfig", + "compilerOptions": { + "strict": true, + "noImplicitAny": true, + "target": "ES2022", + "module": "NodeNext", + "moduleResolution": "NodeNext" } +} diff --git a/test/fixtures/apps/ts/redisapp-ts/app/controller/home.ts b/test/fixtures/apps/ts/redisapp-ts/app/controller/home.ts index 8835abc..d73af40 100644 --- a/test/fixtures/apps/ts/redisapp-ts/app/controller/home.ts +++ b/test/fixtures/apps/ts/redisapp-ts/app/controller/home.ts @@ -1,16 +1,22 @@ -import { Controller } from 'egg'; +import { Controller, Singleton } from 'egg'; +import { Redis } from 'ioredis'; declare module 'egg' { interface IController { home: HomeController; } + + interface EggApplicationCore { + redis: Redis & Singleton; + } } export default class HomeController extends Controller { async index() { - const { ctx,app } = this; - const redis = app.redis + const { ctx, app } = this; + const redis = app.redis; await redis.set('foo', 'bar'); - ctx.body = await redis.get('foo'); + const cacheValue = await redis.get('foo'); + ctx.body = cacheValue; } } diff --git a/test/fixtures/apps/ts/redisapp-ts/tsconfig.json b/test/fixtures/apps/ts/redisapp-ts/tsconfig.json new file mode 100644 index 0000000..ff41b73 --- /dev/null +++ b/test/fixtures/apps/ts/redisapp-ts/tsconfig.json @@ -0,0 +1,10 @@ +{ + "extends": "@eggjs/tsconfig", + "compilerOptions": { + "strict": true, + "noImplicitAny": true, + "target": "ES2022", + "module": "NodeNext", + "moduleResolution": "NodeNext" + } +} diff --git a/test/fixtures/apps/ts/tsconfig.json b/test/fixtures/apps/ts/tsconfig.json deleted file mode 100644 index 75cb28f..0000000 --- a/test/fixtures/apps/ts/tsconfig.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "compilerOptions": { - "target": "es2017", - "module": "commonjs", - "baseUrl": ".", - "strict": true, - "lib": [ - "es2017" - ], - "skipLibCheck": false, - "noImplicitAny": false - }, - "include": [ - "../../../../**/*" - ] - } diff --git a/test/redis.test.js b/test/redis.test.ts similarity index 70% rename from test/redis.test.js rename to test/redis.test.ts index b6dac68..5472181 100644 --- a/test/redis.test.js +++ b/test/redis.test.ts @@ -1,13 +1,10 @@ -'use strict'; - -const mm = require('egg-mock'); -const request = require('supertest'); -const path = require('path'); -const compile = require('child_process'); +import compile from 'node:child_process'; +import path from 'node:path'; +import { mm, MockApplication } from '@eggjs/mock'; describe('test/redis.test.js', () => { describe('single client', () => { - let app; + let app: MockApplication; before(async () => { app = mm.app({ baseDir: 'apps/redisapp', @@ -18,7 +15,7 @@ describe('test/redis.test.js', () => { afterEach(mm.restore); it('should query', () => { - return request(app.callback()) + return app.httpRequest() .get('/') .expect(200) .expect('bar'); @@ -26,7 +23,7 @@ describe('test/redis.test.js', () => { }); describe('weak dependent', () => { - let app; + let app: MockApplication; before(async () => { app = mm.app({ baseDir: 'apps/redisapp-weakdependent', @@ -37,7 +34,7 @@ describe('test/redis.test.js', () => { afterEach(mm.restore); it('should query', () => { - return request(app.callback()) + return app.httpRequest() .get('/') .expect(200) .expect('bar'); @@ -45,7 +42,7 @@ describe('test/redis.test.js', () => { }); describe('single client supportTimeCommand = false', () => { - let app; + let app: MockApplication; before(async () => { app = mm.app({ baseDir: 'apps/redisapp-supportTimeCommand-false', @@ -56,7 +53,7 @@ describe('test/redis.test.js', () => { afterEach(mm.restore); it('should query', () => { - return request(app.callback()) + return app.httpRequest() .get('/') .expect(200) .expect('bar'); @@ -64,7 +61,7 @@ describe('test/redis.test.js', () => { }); describe('single client with customize ioredis', () => { - let app; + let app: MockApplication; before(async () => { app = mm.app({ baseDir: 'apps/redisapp-customize', @@ -75,31 +72,37 @@ describe('test/redis.test.js', () => { afterEach(mm.restore); it('should query', () => { - return request(app.callback()) + return app.httpRequest() .get('/') .expect(200) .expect('bar'); }); }); - describe('single client for ts', () => { - let app; + let app: MockApplication; + const destPath = path.resolve('./test/fixtures/apps/ts/redisapp-ts'); + const compilerPath = path.resolve('./node_modules/typescript/bin/tsc'); + before(async () => { // Add new dynamic compiler to compile from ts to js - const destPath = path.resolve('./test/fixtures/apps/ts'); - const compilerPath = path.resolve('./node_modules/typescript/bin/tsc'); - compile.execSync(`node ${compilerPath} -p ${destPath}`); + compile.execSync(`node ${compilerPath} -p ${destPath}`, { + cwd: destPath, + stdio: 'inherit', + }); app = mm.app({ baseDir: 'apps/ts/redisapp-ts', }); await app.ready(); }); - after(() => app.close()); - afterEach(mm.restore); + after(async () => { + // cleanup + compile.execSync(`node ${compilerPath} --build --clean`); + await app?.close(); + }); it('should query', () => { - return request(app.callback()) + return app.httpRequest() .get('/') .expect(200) .expect('bar'); @@ -107,22 +110,25 @@ describe('test/redis.test.js', () => { }); describe('multi client for ts', () => { - let app; + let app: MockApplication; + const destPath = path.resolve('./test/fixtures/apps/ts-multi'); + const compilerPath = path.resolve('./node_modules/typescript/bin/tsc'); before(async () => { // Add new dynamic compiler to compile from ts to js - const destPath = path.resolve('./test/fixtures/apps/ts-multi'); - const compilerPath = path.resolve('./node_modules/typescript/bin/tsc'); compile.execSync(`node ${compilerPath} -p ${destPath}`); app = mm.app({ baseDir: 'apps/ts-multi/redisapp-ts', }); await app.ready(); }); - after(() => app.close()); - afterEach(mm.restore); + after(async () => { + // cleanup + compile.execSync(`node ${compilerPath} --build --clean`); + await app?.close(); + }); it('should query', () => { - return request(app.callback()) + return app.httpRequest() .get('/') .expect(200) .expect('bar'); @@ -131,7 +137,7 @@ describe('test/redis.test.js', () => { // TODO: make github action support sentinel describe.skip('redis sentinel', () => { - let app; + let app: MockApplication; before(async () => { app = mm.app({ baseDir: 'apps/redissentinelapp', @@ -142,7 +148,7 @@ describe('test/redis.test.js', () => { afterEach(mm.restore); it('should query', () => { - return request(app.callback()) + return app.httpRequest() .get('/') .expect(200) .expect('bar'); @@ -150,7 +156,7 @@ describe('test/redis.test.js', () => { }); describe('await ready event', () => { - let app; + let app: MockApplication; before(async () => { app = mm.app({ baseDir: 'apps/redisapp-disable-offline-queue', @@ -161,7 +167,7 @@ describe('test/redis.test.js', () => { afterEach(mm.restore); it('should query', () => { - return request(app.callback()) + return app.httpRequest() .get('/') .expect(200) .expect('bar'); @@ -170,7 +176,7 @@ describe('test/redis.test.js', () => { // TODO: make github action support redis start with path describe.skip('redis path', () => { - let app; + let app: MockApplication; before(async () => { app = mm.app({ baseDir: 'apps/redispathapp', @@ -181,7 +187,7 @@ describe('test/redis.test.js', () => { afterEach(mm.restore); it('should query', () => { - return request(app.callback()) + return app.httpRequest() .get('/') .expect(200) .expect('bar'); diff --git a/tsconfig.json b/tsconfig.json new file mode 100644 index 0000000..ff41b73 --- /dev/null +++ b/tsconfig.json @@ -0,0 +1,10 @@ +{ + "extends": "@eggjs/tsconfig", + "compilerOptions": { + "strict": true, + "noImplicitAny": true, + "target": "ES2022", + "module": "NodeNext", + "moduleResolution": "NodeNext" + } +} From e1bab706b6744a7edd617b94026e0c87b9f9e089 Mon Sep 17 00:00:00 2001 From: fengmk2 Date: Tue, 21 Jan 2025 23:04:26 +0800 Subject: [PATCH 2/4] f --- __snapshots__/redis.test.ts.js | 12 ++++++++++ package.json | 1 + .../redisapp-default/app/controller/home.js | 9 +++++++ .../apps/redisapp-default/app/router.js | 5 ++++ .../apps/redisapp-default/config/config.js | 16 +++++++++++++ .../apps/redisapp-default/package.json | 3 +++ test/fixtures/apps/redisapp/config/config.js | 4 +--- test/redis.test.ts | 24 +++++++++++++++++++ 8 files changed, 71 insertions(+), 3 deletions(-) create mode 100644 __snapshots__/redis.test.ts.js create mode 100644 test/fixtures/apps/redisapp-default/app/controller/home.js create mode 100644 test/fixtures/apps/redisapp-default/app/router.js create mode 100644 test/fixtures/apps/redisapp-default/config/config.js create mode 100644 test/fixtures/apps/redisapp-default/package.json diff --git a/__snapshots__/redis.test.ts.js b/__snapshots__/redis.test.ts.js new file mode 100644 index 0000000..35965bf --- /dev/null +++ b/__snapshots__/redis.test.ts.js @@ -0,0 +1,12 @@ +exports['test/redis.test.js default config should make default config stable 1'] = { + "default": {}, + "app": true, + "agent": false, + "supportTimeCommand": true, + "client": { + "host": "127.0.0.1", + "port": 6379, + "password": "", + "db": "0" + } +} diff --git a/package.json b/package.json index ec3aa13..6e7901c 100644 --- a/package.json +++ b/package.json @@ -49,6 +49,7 @@ "eslint": "8", "eslint-config-egg": "14", "rimraf": "6", + "snap-shot-it": "^7.9.10", "tshy": "3", "tshy-after": "1", "typescript": "5" diff --git a/test/fixtures/apps/redisapp-default/app/controller/home.js b/test/fixtures/apps/redisapp-default/app/controller/home.js new file mode 100644 index 0000000..d77ceb9 --- /dev/null +++ b/test/fixtures/apps/redisapp-default/app/controller/home.js @@ -0,0 +1,9 @@ +module.exports = app => { + return class HomeController extends app.Controller { + async index() { + const { ctx, app } = this; + await app.redis.set('foo', 'bar'); + ctx.body = await app.redis.get('foo'); + } + }; +}; diff --git a/test/fixtures/apps/redisapp-default/app/router.js b/test/fixtures/apps/redisapp-default/app/router.js new file mode 100644 index 0000000..96d8892 --- /dev/null +++ b/test/fixtures/apps/redisapp-default/app/router.js @@ -0,0 +1,5 @@ +'use strict'; + +module.exports = function(app) { + app.get('/', 'home.index'); +}; diff --git a/test/fixtures/apps/redisapp-default/config/config.js b/test/fixtures/apps/redisapp-default/config/config.js new file mode 100644 index 0000000..00bff1e --- /dev/null +++ b/test/fixtures/apps/redisapp-default/config/config.js @@ -0,0 +1,16 @@ +exports.redis = { + client: { + host: '127.0.0.1', + port: 6379, + password: '', + db: '0', + }, +}; + +exports.logger = { + coreLogger: { + level: 'INFO', + }, +}; + +exports.keys = 'keys'; diff --git a/test/fixtures/apps/redisapp-default/package.json b/test/fixtures/apps/redisapp-default/package.json new file mode 100644 index 0000000..78a3f5b --- /dev/null +++ b/test/fixtures/apps/redisapp-default/package.json @@ -0,0 +1,3 @@ +{ + "name": "redisapp" +} diff --git a/test/fixtures/apps/redisapp/config/config.js b/test/fixtures/apps/redisapp/config/config.js index 3a9c005..b28e997 100644 --- a/test/fixtures/apps/redisapp/config/config.js +++ b/test/fixtures/apps/redisapp/config/config.js @@ -1,5 +1,3 @@ -'use strict'; - exports.redis = { client: { host: '127.0.0.1', @@ -7,7 +5,7 @@ exports.redis = { password: '', db: '0', }, - agent:true, + agent: true, }; exports.logger = { diff --git a/test/redis.test.ts b/test/redis.test.ts index 5472181..5ec1b86 100644 --- a/test/redis.test.ts +++ b/test/redis.test.ts @@ -1,8 +1,32 @@ import compile from 'node:child_process'; import path from 'node:path'; import { mm, MockApplication } from '@eggjs/mock'; +import snapshot from 'snap-shot-it'; describe('test/redis.test.js', () => { + describe('default config', () => { + let app: MockApplication; + before(async () => { + app = mm.app({ + baseDir: 'apps/redisapp-default', + }); + await app.ready(); + }); + after(() => app.close()); + afterEach(mm.restore); + + it('should make default config stable', () => { + snapshot(app.config.redis); + }); + + it('should query', () => { + return app.httpRequest() + .get('/') + .expect(200) + .expect('bar'); + }); + }); + describe('single client', () => { let app: MockApplication; before(async () => { From 33e7910174b94d10e6d1c3b3bf55d100e9335ea7 Mon Sep 17 00:00:00 2001 From: fengmk2 Date: Tue, 21 Jan 2025 23:05:15 +0800 Subject: [PATCH 3/4] f --- .gitignore | 1 + example/hello/run/agent_config.json | 470 --------------- example/hello/run/agent_config_meta.json | 259 --------- example/hello/run/agent_timing_95228.json | 362 ------------ example/hello/run/application_config.json | 499 ---------------- .../hello/run/application_config_meta.json | 259 --------- .../hello/run/application_timing_95243.json | 546 ------------------ example/hello/run/router.json | 14 - 8 files changed, 1 insertion(+), 2409 deletions(-) delete mode 100644 example/hello/run/agent_config.json delete mode 100644 example/hello/run/agent_config_meta.json delete mode 100644 example/hello/run/agent_timing_95228.json delete mode 100644 example/hello/run/application_config.json delete mode 100644 example/hello/run/application_config_meta.json delete mode 100644 example/hello/run/application_timing_95243.json delete mode 100644 example/hello/run/router.json diff --git a/.gitignore b/.gitignore index 3f19017..7e41e53 100644 --- a/.gitignore +++ b/.gitignore @@ -10,3 +10,4 @@ dist package-lock.json .package-lock.json test/fixtures/**/*.d.ts +run/ diff --git a/example/hello/run/agent_config.json b/example/hello/run/agent_config.json deleted file mode 100644 index 966d9b9..0000000 --- a/example/hello/run/agent_config.json +++ /dev/null @@ -1,470 +0,0 @@ -{ - "config": { - "middleware": [], - "coreMiddleware": [ - "meta", - "siteFile", - "notfound", - "bodyParser", - "overrideMethod" - ], - "session": { - "key": "EGG_SESS", - "maxAge": 86400000, - "autoCommit": true, - "overwrite": true, - "httpOnly": true, - "signed": true, - "rolling": false, - "renew": false, - "encode": "", - "decode": "", - "logValue": true - }, - "security": { - "domainWhiteList": [], - "protocolWhiteList": [], - "defaultMiddleware": [ - "csrf", - "hsts", - "methodnoallow", - "noopen", - "nosniff", - "csp", - "xssProtection", - "xframe", - "dta" - ], - "csrf": { - "enable": true, - "type": "ctoken", - "ignoreJSON": false, - "cookieName": "csrfToken", - "sessionName": "csrfToken", - "headerName": "x-csrf-token", - "bodyName": "_csrf", - "queryName": "_csrf", - "rotateWhenInvalid": false, - "useSession": false, - "supportedRequests": [ - { - "path": {}, - "methods": [ - "POST", - "PATCH", - "DELETE", - "PUT", - "CONNECT" - ] - } - ], - "refererWhiteList": [], - "cookieOptions": { - "signed": false, - "httpOnly": false, - "overwrite": true - } - }, - "xframe": { - "enable": true, - "value": "SAMEORIGIN" - }, - "hsts": { - "enable": false, - "maxAge": 31536000, - "includeSubdomains": false - }, - "methodnoallow": { - "enable": true - }, - "noopen": { - "enable": true - }, - "nosniff": { - "enable": true - }, - "xssProtection": { - "enable": true, - "value": "1; mode=block" - }, - "csp": { - "enable": false, - "policy": {} - }, - "referrerPolicy": { - "enable": false, - "value": "no-referrer-when-downgrade" - }, - "dta": { - "enable": true - }, - "ssrf": {} - }, - "helper": { - "shtml": {} - }, - "jsonp": { - "limit": 50, - "callback": [ - "_callback", - "callback" - ], - "csrf": false - }, - "onerror": { - "errorPageUrl": "", - "appErrorFilter": null, - "templatePath": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-onerror@2.4.0/node_modules/egg-onerror/lib/onerror_page.mustache" - }, - "i18n": { - "defaultLocale": "en_US", - "dirs": [], - "queryField": "locale", - "cookieField": "locale", - "cookieDomain": "", - "cookieMaxAge": "1y", - "localeAlias": {}, - "writeCookie": true - }, - "watcher": { - "type": "development", - "eventSources": { - "default": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+watcher@4.0.4/node_modules/@eggjs/watcher/dist/esm/lib/event-sources/default", - "development": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+watcher@4.0.4/node_modules/@eggjs/watcher/dist/esm/lib/event-sources/development" - } - }, - "customLogger": { - "scheduleLogger": { - "consoleLevel": "NONE", - "file": "egg-schedule.log" - } - }, - "schedule": { - "directory": [] - }, - "multipart": { - "mode": "stream", - "autoFields": false, - "defaultCharset": "utf8", - "defaultParamCharset": "utf8", - "fieldNameSize": 100, - "fieldSize": "100kb", - "fields": 10, - "fileSize": "10mb", - "files": 10, - "fileExtensions": [], - "whitelist": null, - "allowArrayField": false, - "tmpdir": "/var/folders/g8/c087s6rn3n16q32vnxbs47lh0000gn/T/egg-multipart-tmp/hello-redis", - "cleanSchedule": { - "cron": "0 30 4 * * *", - "disable": false - } - }, - "development": { - "watchDirs": [], - "ignoreDirs": [], - "fastReady": false, - "reloadOnDebug": true, - "overrideDefault": false, - "overrideIgnore": false - }, - "logrotator": { - "filesRotateByHour": null, - "hourDelimiter": "-", - "filesRotateBySize": null, - "maxFileSize": 52428800, - "maxFiles": 10, - "rotateDuration": 60000, - "maxDays": 31 - }, - "static": { - "prefix": "/public/", - "dir": "/Users/fengmk2/git/github.com/eggjs/redis/example/hello/app/public", - "dynamic": true, - "preload": false, - "buffer": false, - "maxFiles": 1000 - }, - "view": { - "root": "/Users/fengmk2/git/github.com/eggjs/redis/example/hello/app/view", - "cache": false, - "defaultExtension": ".html", - "defaultViewEngine": "", - "mapping": {} - }, - "env": "local", - "name": "hello-redis", - "keys": "", - "cookies": {}, - "proxy": false, - "maxIpsCount": 0, - "maxProxyCount": 0, - "protocolHeaders": "x-forwarded-proto", - "ipHeaders": "x-forwarded-for", - "hostHeaders": "", - "pkg": { - "name": "hello-redis", - "type": "module" - }, - "baseDir": "/Users/fengmk2/git/github.com/eggjs/redis/example/hello", - "HOME": "/Users/fengmk2", - "rundir": "/Users/fengmk2/git/github.com/eggjs/redis/example/hello/run", - "dump": { - "ignore": "", - "timing": { - "slowBootActionMinDuration": 5000 - } - }, - "confusedConfigurations": { - "bodyparser": "bodyParser", - "notFound": "notfound", - "sitefile": "siteFile", - "middlewares": "middleware", - "httpClient": "httpclient" - }, - "notfound": { - "enable": true, - "pageUrl": "" - }, - "siteFile": { - "enable": true, - "/favicon.ico": "file:///Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/favicon.png", - "cacheControl": "public, max-age=2592000" - }, - "bodyParser": { - "enable": true, - "encoding": "utf8", - "formLimit": "1mb", - "jsonLimit": "1mb", - "textLimit": "1mb", - "strict": true, - "queryString": { - "arrayLimit": 100, - "depth": 5, - "parameterLimit": 1000 - }, - "onProtoPoisoning": "error", - "onerror": "" - }, - "logger": { - "dir": "/Users/fengmk2/git/github.com/eggjs/redis/example/hello/logs/hello-redis", - "encoding": "utf8", - "env": "local", - "level": "INFO", - "consoleLevel": "INFO", - "disableConsoleAfterReady": false, - "outputJSON": false, - "buffer": true, - "appLogName": "hello-redis-web.log", - "coreLogName": "egg-web.log", - "agentLogName": "egg-agent.log", - "errorLogName": "common-error.log", - "coreLogger": { - "consoleLevel": "WARN" - }, - "allowDebugAtProd": false, - "enableFastContextLogger": true - }, - "httpclient": { - "request": { - "timeout": 5000 - } - }, - "meta": { - "enable": true, - "logging": false - }, - "workerStartTimeout": 600000, - "serverTimeout": null, - "cluster": { - "listen": { - "path": "", - "port": 7001, - "hostname": "" - } - }, - "clusterClient": { - "maxWaitTime": 60000, - "responseTimeout": 60000 - }, - "coreMiddlewares": "~config~coreMiddleware", - "appMiddlewares": "~config~middleware", - "appMiddleware": "~config~middleware" - }, - "plugins": { - "onerror": { - "enable": true, - "package": "egg-onerror", - "name": "onerror", - "dependencies": [], - "optionalDependencies": [ - "jsonp" - ], - "env": [], - "from": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/plugin.js", - "path": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-onerror@2.4.0/node_modules/egg-onerror", - "version": "2.4.0" - }, - "session": { - "enable": true, - "package": "@eggjs/session", - "name": "session", - "dependencies": [], - "optionalDependencies": [], - "env": [], - "from": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/plugin.js", - "path": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+session@4.0.0/node_modules/@eggjs/session/dist/esm", - "version": "4.0.0" - }, - "i18n": { - "enable": true, - "package": "@eggjs/i18n", - "name": "i18n", - "dependencies": [], - "optionalDependencies": [], - "env": [], - "from": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/plugin.js", - "path": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+i18n@3.0.1/node_modules/@eggjs/i18n/dist/esm", - "version": "3.0.1" - }, - "watcher": { - "enable": true, - "package": "@eggjs/watcher", - "name": "watcher", - "dependencies": [], - "optionalDependencies": [], - "env": [], - "from": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/plugin.js", - "path": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+watcher@4.0.4/node_modules/@eggjs/watcher/dist/esm", - "version": "4.0.4", - "dependents": [ - "development" - ] - }, - "multipart": { - "enable": true, - "package": "egg-multipart", - "name": "multipart", - "dependencies": [], - "optionalDependencies": [ - "schedule" - ], - "env": [], - "from": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/plugin.js", - "path": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-multipart@3.4.0/node_modules/egg-multipart", - "version": "3.4.0" - }, - "security": { - "enable": true, - "package": "@eggjs/security", - "name": "security", - "dependencies": [], - "optionalDependencies": [ - "session" - ], - "env": [], - "from": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/plugin.js", - "path": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm", - "version": "4.0.0" - }, - "development": { - "enable": true, - "package": "@eggjs/development", - "name": "development", - "dependencies": [ - "watcher" - ], - "optionalDependencies": [], - "env": [ - "local" - ], - "from": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/plugin.js", - "path": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+development@4.0.0/node_modules/@eggjs/development/dist/esm", - "version": "4.0.0" - }, - "logrotator": { - "enable": true, - "package": "egg-logrotator", - "name": "logrotator", - "dependencies": [ - "schedule" - ], - "optionalDependencies": [], - "env": [], - "from": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/plugin.js", - "path": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-logrotator@3.2.0/node_modules/egg-logrotator", - "version": "3.2.0" - }, - "schedule": { - "enable": true, - "package": "@eggjs/schedule", - "name": "schedule", - "dependencies": [], - "optionalDependencies": [], - "env": [], - "from": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/plugin.js", - "path": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+schedule@5.0.2/node_modules/@eggjs/schedule/dist/esm", - "version": "5.0.2", - "dependents": [ - "logrotator" - ] - }, - "static": { - "enable": true, - "package": "@eggjs/static", - "name": "static", - "dependencies": [], - "optionalDependencies": [], - "env": [], - "from": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/plugin.js", - "path": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+static@3.0.0/node_modules/@eggjs/static/dist/esm", - "version": "3.0.0" - }, - "jsonp": { - "enable": true, - "package": "@eggjs/jsonp", - "name": "jsonp", - "dependencies": [], - "optionalDependencies": [ - "security" - ], - "env": [], - "from": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/plugin.js", - "path": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+jsonp@3.0.0/node_modules/@eggjs/jsonp/dist/esm", - "version": "3.0.0" - }, - "view": { - "enable": true, - "package": "egg-view", - "name": "view", - "dependencies": [], - "optionalDependencies": [], - "env": [], - "from": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/plugin.js", - "path": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-view@2.1.4/node_modules/egg-view", - "version": "2.1.4" - }, - "redis": { - "enable": true, - "path": "../../../../..", - "name": "redis", - "dependencies": [], - "optionalDependencies": [], - "env": [], - "from": "/Users/fengmk2/git/github.com/eggjs/redis/example/hello/config/plugin.ts" - } - }, - "appInfo": { - "name": "hello-redis", - "baseDir": "/Users/fengmk2/git/github.com/eggjs/redis/example/hello", - "env": "local", - "scope": "", - "HOME": "/Users/fengmk2", - "pkg": { - "name": "hello-redis", - "type": "module" - }, - "root": "/Users/fengmk2/git/github.com/eggjs/redis/example/hello" - } -} \ No newline at end of file diff --git a/example/hello/run/agent_config_meta.json b/example/hello/run/agent_config_meta.json deleted file mode 100644 index 3c1df3b..0000000 --- a/example/hello/run/agent_config_meta.json +++ /dev/null @@ -1,259 +0,0 @@ -{ - "keys": "/Users/fengmk2/git/github.com/eggjs/redis/example/hello/config/config.default.ts", - "session": { - "key": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+session@4.0.0/node_modules/@eggjs/session/dist/esm/config/config.default.js", - "maxAge": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+session@4.0.0/node_modules/@eggjs/session/dist/esm/config/config.default.js", - "autoCommit": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+session@4.0.0/node_modules/@eggjs/session/dist/esm/config/config.default.js", - "overwrite": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+session@4.0.0/node_modules/@eggjs/session/dist/esm/config/config.default.js", - "httpOnly": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+session@4.0.0/node_modules/@eggjs/session/dist/esm/config/config.default.js", - "signed": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+session@4.0.0/node_modules/@eggjs/session/dist/esm/config/config.default.js", - "rolling": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+session@4.0.0/node_modules/@eggjs/session/dist/esm/config/config.default.js", - "renew": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+session@4.0.0/node_modules/@eggjs/session/dist/esm/config/config.default.js", - "encode": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+session@4.0.0/node_modules/@eggjs/session/dist/esm/config/config.default.js", - "decode": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+session@4.0.0/node_modules/@eggjs/session/dist/esm/config/config.default.js", - "logValue": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+session@4.0.0/node_modules/@eggjs/session/dist/esm/config/config.default.js" - }, - "security": { - "domainWhiteList": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js", - "protocolWhiteList": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js", - "defaultMiddleware": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js", - "csrf": { - "enable": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js", - "type": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js", - "ignoreJSON": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js", - "cookieName": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js", - "sessionName": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js", - "headerName": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js", - "bodyName": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js", - "queryName": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js", - "rotateWhenInvalid": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js", - "useSession": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js", - "supportedRequests": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js", - "refererWhiteList": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js", - "cookieOptions": { - "signed": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js", - "httpOnly": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js", - "overwrite": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js" - } - }, - "xframe": { - "enable": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js", - "value": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js" - }, - "hsts": { - "enable": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.local.js", - "maxAge": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js", - "includeSubdomains": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js" - }, - "methodnoallow": { - "enable": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js" - }, - "noopen": { - "enable": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js" - }, - "nosniff": { - "enable": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js" - }, - "xssProtection": { - "enable": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js", - "value": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js" - }, - "csp": { - "enable": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js", - "policy": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js" - }, - "referrerPolicy": { - "enable": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js", - "value": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js" - }, - "dta": { - "enable": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js" - }, - "ssrf": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js" - }, - "helper": { - "shtml": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js" - }, - "jsonp": { - "limit": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+jsonp@3.0.0/node_modules/@eggjs/jsonp/dist/esm/config/config.default.js", - "callback": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+jsonp@3.0.0/node_modules/@eggjs/jsonp/dist/esm/config/config.default.js", - "csrf": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+jsonp@3.0.0/node_modules/@eggjs/jsonp/dist/esm/config/config.default.js" - }, - "onerror": { - "errorPageUrl": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-onerror@2.4.0/node_modules/egg-onerror/config/config.default.js", - "appErrorFilter": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-onerror@2.4.0/node_modules/egg-onerror/config/config.default.js", - "templatePath": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-onerror@2.4.0/node_modules/egg-onerror/config/config.default.js" - }, - "i18n": { - "defaultLocale": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+i18n@3.0.1/node_modules/@eggjs/i18n/dist/esm/config/config.default.js", - "dirs": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+i18n@3.0.1/node_modules/@eggjs/i18n/dist/esm/config/config.default.js", - "queryField": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+i18n@3.0.1/node_modules/@eggjs/i18n/dist/esm/config/config.default.js", - "cookieField": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+i18n@3.0.1/node_modules/@eggjs/i18n/dist/esm/config/config.default.js", - "cookieDomain": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+i18n@3.0.1/node_modules/@eggjs/i18n/dist/esm/config/config.default.js", - "cookieMaxAge": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+i18n@3.0.1/node_modules/@eggjs/i18n/dist/esm/config/config.default.js", - "localeAlias": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+i18n@3.0.1/node_modules/@eggjs/i18n/dist/esm/config/config.default.js", - "writeCookie": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+i18n@3.0.1/node_modules/@eggjs/i18n/dist/esm/config/config.default.js" - }, - "watcher": { - "type": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+watcher@4.0.4/node_modules/@eggjs/watcher/dist/esm/config/config.local.js", - "eventSources": { - "default": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+watcher@4.0.4/node_modules/@eggjs/watcher/dist/esm/config/config.default.js", - "development": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+watcher@4.0.4/node_modules/@eggjs/watcher/dist/esm/config/config.default.js" - } - }, - "customLogger": { - "scheduleLogger": { - "consoleLevel": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+schedule@5.0.2/node_modules/@eggjs/schedule/dist/esm/config/config.default.js", - "file": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+schedule@5.0.2/node_modules/@eggjs/schedule/dist/esm/config/config.default.js" - } - }, - "schedule": { - "directory": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+schedule@5.0.2/node_modules/@eggjs/schedule/dist/esm/config/config.default.js" - }, - "multipart": { - "mode": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-multipart@3.4.0/node_modules/egg-multipart/config/config.default.js", - "autoFields": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-multipart@3.4.0/node_modules/egg-multipart/config/config.default.js", - "defaultCharset": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-multipart@3.4.0/node_modules/egg-multipart/config/config.default.js", - "defaultParamCharset": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-multipart@3.4.0/node_modules/egg-multipart/config/config.default.js", - "fieldNameSize": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-multipart@3.4.0/node_modules/egg-multipart/config/config.default.js", - "fieldSize": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-multipart@3.4.0/node_modules/egg-multipart/config/config.default.js", - "fields": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-multipart@3.4.0/node_modules/egg-multipart/config/config.default.js", - "fileSize": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-multipart@3.4.0/node_modules/egg-multipart/config/config.default.js", - "files": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-multipart@3.4.0/node_modules/egg-multipart/config/config.default.js", - "fileExtensions": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-multipart@3.4.0/node_modules/egg-multipart/config/config.default.js", - "whitelist": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-multipart@3.4.0/node_modules/egg-multipart/config/config.default.js", - "allowArrayField": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-multipart@3.4.0/node_modules/egg-multipart/config/config.default.js", - "tmpdir": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-multipart@3.4.0/node_modules/egg-multipart/config/config.default.js", - "cleanSchedule": { - "cron": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-multipart@3.4.0/node_modules/egg-multipart/config/config.default.js", - "disable": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-multipart@3.4.0/node_modules/egg-multipart/config/config.default.js" - } - }, - "development": { - "watchDirs": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+development@4.0.0/node_modules/@eggjs/development/dist/esm/config/config.default.js", - "ignoreDirs": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+development@4.0.0/node_modules/@eggjs/development/dist/esm/config/config.default.js", - "fastReady": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+development@4.0.0/node_modules/@eggjs/development/dist/esm/config/config.default.js", - "reloadOnDebug": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+development@4.0.0/node_modules/@eggjs/development/dist/esm/config/config.default.js", - "overrideDefault": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+development@4.0.0/node_modules/@eggjs/development/dist/esm/config/config.default.js", - "overrideIgnore": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+development@4.0.0/node_modules/@eggjs/development/dist/esm/config/config.default.js" - }, - "logrotator": { - "filesRotateByHour": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-logrotator@3.2.0/node_modules/egg-logrotator/config/config.default.js", - "hourDelimiter": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-logrotator@3.2.0/node_modules/egg-logrotator/config/config.default.js", - "filesRotateBySize": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-logrotator@3.2.0/node_modules/egg-logrotator/config/config.default.js", - "maxFileSize": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-logrotator@3.2.0/node_modules/egg-logrotator/config/config.default.js", - "maxFiles": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-logrotator@3.2.0/node_modules/egg-logrotator/config/config.default.js", - "rotateDuration": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-logrotator@3.2.0/node_modules/egg-logrotator/config/config.default.js", - "maxDays": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-logrotator@3.2.0/node_modules/egg-logrotator/config/config.default.js" - }, - "static": { - "prefix": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+static@3.0.0/node_modules/@eggjs/static/dist/esm/config/config.default.js", - "dir": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+static@3.0.0/node_modules/@eggjs/static/dist/esm/config/config.default.js", - "dynamic": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+static@3.0.0/node_modules/@eggjs/static/dist/esm/config/config.default.js", - "preload": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+static@3.0.0/node_modules/@eggjs/static/dist/esm/config/config.default.js", - "buffer": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+static@3.0.0/node_modules/@eggjs/static/dist/esm/config/config.default.js", - "maxFiles": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+static@3.0.0/node_modules/@eggjs/static/dist/esm/config/config.default.js" - }, - "view": { - "root": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-view@2.1.4/node_modules/egg-view/config/config.default.js", - "cache": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-view@2.1.4/node_modules/egg-view/config/config.local.js", - "defaultExtension": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-view@2.1.4/node_modules/egg-view/config/config.default.js", - "defaultViewEngine": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-view@2.1.4/node_modules/egg-view/config/config.default.js", - "mapping": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-view@2.1.4/node_modules/egg-view/config/config.default.js" - }, - "env": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", - "name": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", - "cookies": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", - "proxy": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", - "maxIpsCount": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", - "maxProxyCount": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", - "protocolHeaders": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", - "ipHeaders": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", - "hostHeaders": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", - "pkg": { - "name": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", - "type": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js" - }, - "baseDir": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", - "HOME": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", - "rundir": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", - "dump": { - "ignore": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", - "timing": { - "slowBootActionMinDuration": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js" - } - }, - "confusedConfigurations": { - "bodyparser": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", - "notFound": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", - "sitefile": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", - "middlewares": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", - "httpClient": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js" - }, - "notfound": { - "enable": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", - "pageUrl": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js" - }, - "siteFile": { - "enable": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", - "/favicon.ico": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", - "cacheControl": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js" - }, - "bodyParser": { - "enable": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", - "encoding": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", - "formLimit": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", - "jsonLimit": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", - "textLimit": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", - "strict": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", - "queryString": { - "arrayLimit": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", - "depth": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", - "parameterLimit": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js" - }, - "onProtoPoisoning": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", - "onerror": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js" - }, - "logger": { - "dir": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", - "encoding": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", - "env": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", - "level": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", - "consoleLevel": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", - "disableConsoleAfterReady": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", - "outputJSON": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", - "buffer": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", - "appLogName": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", - "coreLogName": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", - "agentLogName": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", - "errorLogName": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", - "coreLogger": { - "consoleLevel": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.local.js" - }, - "allowDebugAtProd": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", - "enableFastContextLogger": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js" - }, - "httpclient": { - "request": { - "timeout": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js" - } - }, - "meta": { - "enable": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", - "logging": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js" - }, - "coreMiddleware": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", - "workerStartTimeout": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", - "serverTimeout": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", - "cluster": { - "listen": { - "path": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", - "port": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", - "hostname": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js" - } - }, - "clusterClient": { - "maxWaitTime": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", - "responseTimeout": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js" - } -} \ No newline at end of file diff --git a/example/hello/run/agent_timing_95228.json b/example/hello/run/agent_timing_95228.json deleted file mode 100644 index 66ad286..0000000 --- a/example/hello/run/agent_timing_95228.json +++ /dev/null @@ -1,362 +0,0 @@ -[ - { - "name": "Process Start", - "start": 1737425752469, - "pid": 95228, - "index": 0, - "end": 1737425752941, - "duration": 472 - }, - { - "name": "agent Start", - "start": 1737425752941, - "pid": 95228, - "index": 1, - "end": 1737425753707, - "duration": 766 - }, - { - "name": "Before Start in load files", - "start": 1737425752944, - "pid": 95228, - "index": 2, - "end": 1737425753697, - "duration": 753 - }, - { - "name": "Load Plugin", - "start": 1737425752944, - "pid": 95228, - "index": 3, - "end": 1737425753611, - "duration": 667 - }, - { - "name": "Load Config", - "start": 1737425753611, - "pid": 95228, - "index": 4, - "end": 1737425753630, - "duration": 19 - }, - { - "name": "Require(0) config/config.default.ts", - "start": 1737425753611, - "pid": 95228, - "index": 5, - "end": 1737425753612, - "duration": 1 - }, - { - "name": "Require(1) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+session@4.0.0/node_modules/@eggjs/session/dist/esm/config/config.default.js", - "start": 1737425753613, - "pid": 95228, - "index": 6, - "end": 1737425753613, - "duration": 0 - }, - { - "name": "Require(2) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js", - "start": 1737425753613, - "pid": 95228, - "index": 7, - "end": 1737425753616, - "duration": 3 - }, - { - "name": "Require(3) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+jsonp@3.0.0/node_modules/@eggjs/jsonp/dist/esm/config/config.default.js", - "start": 1737425753616, - "pid": 95228, - "index": 8, - "end": 1737425753617, - "duration": 1 - }, - { - "name": "Require(4) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-onerror@2.4.0/node_modules/egg-onerror/config/config.default.js", - "start": 1737425753617, - "pid": 95228, - "index": 9, - "end": 1737425753617, - "duration": 0 - }, - { - "name": "Require(5) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+i18n@3.0.1/node_modules/@eggjs/i18n/dist/esm/config/config.default.js", - "start": 1737425753617, - "pid": 95228, - "index": 10, - "end": 1737425753618, - "duration": 1 - }, - { - "name": "Require(6) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+watcher@4.0.4/node_modules/@eggjs/watcher/dist/esm/config/config.default.js", - "start": 1737425753618, - "pid": 95228, - "index": 11, - "end": 1737425753619, - "duration": 1 - }, - { - "name": "Require(7) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+schedule@5.0.2/node_modules/@eggjs/schedule/dist/esm/config/config.default.js", - "start": 1737425753619, - "pid": 95228, - "index": 12, - "end": 1737425753619, - "duration": 0 - }, - { - "name": "Require(8) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-multipart@3.4.0/node_modules/egg-multipart/config/config.default.js", - "start": 1737425753619, - "pid": 95228, - "index": 13, - "end": 1737425753620, - "duration": 1 - }, - { - "name": "Require(9) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+development@4.0.0/node_modules/@eggjs/development/dist/esm/config/config.default.js", - "start": 1737425753620, - "pid": 95228, - "index": 14, - "end": 1737425753620, - "duration": 0 - }, - { - "name": "Require(10) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-logrotator@3.2.0/node_modules/egg-logrotator/config/config.default.js", - "start": 1737425753621, - "pid": 95228, - "index": 15, - "end": 1737425753621, - "duration": 0 - }, - { - "name": "Require(11) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+static@3.0.0/node_modules/@eggjs/static/dist/esm/config/config.default.js", - "start": 1737425753621, - "pid": 95228, - "index": 16, - "end": 1737425753622, - "duration": 1 - }, - { - "name": "Require(12) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-view@2.1.4/node_modules/egg-view/config/config.default.js", - "start": 1737425753622, - "pid": 95228, - "index": 17, - "end": 1737425753622, - "duration": 0 - }, - { - "name": "Require(13) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", - "start": 1737425753623, - "pid": 95228, - "index": 18, - "end": 1737425753624, - "duration": 1 - }, - { - "name": "Require(14) config/config.default.ts", - "start": 1737425753625, - "pid": 95228, - "index": 19, - "end": 1737425753625, - "duration": 0 - }, - { - "name": "Require(15) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.local.js", - "start": 1737425753625, - "pid": 95228, - "index": 20, - "end": 1737425753626, - "duration": 1 - }, - { - "name": "Require(16) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+watcher@4.0.4/node_modules/@eggjs/watcher/dist/esm/config/config.local.js", - "start": 1737425753627, - "pid": 95228, - "index": 21, - "end": 1737425753627, - "duration": 0 - }, - { - "name": "Require(17) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-view@2.1.4/node_modules/egg-view/config/config.local.js", - "start": 1737425753629, - "pid": 95228, - "index": 22, - "end": 1737425753629, - "duration": 0 - }, - { - "name": "Require(18) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.local.js", - "start": 1737425753629, - "pid": 95228, - "index": 23, - "end": 1737425753630, - "duration": 1 - }, - { - "name": "Load extend/agent.js", - "start": 1737425753630, - "pid": 95228, - "index": 24, - "end": 1737425753658, - "duration": 28 - }, - { - "name": "Require(19) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/app/extend/agent.js", - "start": 1737425753630, - "pid": 95228, - "index": 25, - "end": 1737425753638, - "duration": 8 - }, - { - "name": "Require(20) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+schedule@5.0.2/node_modules/@eggjs/schedule/dist/esm/app/extend/agent.js", - "start": 1737425753642, - "pid": 95228, - "index": 26, - "end": 1737425753649, - "duration": 7 - }, - { - "name": "Require(21) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-logrotator@3.2.0/node_modules/egg-logrotator/app/extend/agent.js", - "start": 1737425753650, - "pid": 95228, - "index": 27, - "end": 1737425753654, - "duration": 4 - }, - { - "name": "Load extend/context.js", - "start": 1737425753658, - "pid": 95228, - "index": 28, - "end": 1737425753678, - "duration": 20 - }, - { - "name": "Require(22) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/app/extend/context.js", - "start": 1737425753658, - "pid": 95228, - "index": 29, - "end": 1737425753658, - "duration": 0 - }, - { - "name": "Require(23) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+jsonp@3.0.0/node_modules/@eggjs/jsonp/dist/esm/app/extend/context.js", - "start": 1737425753658, - "pid": 95228, - "index": 30, - "end": 1737425753660, - "duration": 2 - }, - { - "name": "Require(24) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+i18n@3.0.1/node_modules/@eggjs/i18n/dist/esm/app/extend/context.js", - "start": 1737425753660, - "pid": 95228, - "index": 31, - "end": 1737425753663, - "duration": 3 - }, - { - "name": "Require(25) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-multipart@3.4.0/node_modules/egg-multipart/app/extend/context.js", - "start": 1737425753664, - "pid": 95228, - "index": 32, - "end": 1737425753668, - "duration": 4 - }, - { - "name": "Require(26) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-view@2.1.4/node_modules/egg-view/app/extend/context.js", - "start": 1737425753669, - "pid": 95228, - "index": 33, - "end": 1737425753671, - "duration": 2 - }, - { - "name": "Require(27) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/app/extend/context.js", - "start": 1737425753671, - "pid": 95228, - "index": 34, - "end": 1737425753671, - "duration": 0 - }, - { - "name": "Load agent.js", - "start": 1737425753678, - "pid": 95228, - "index": 35, - "end": 1737425753692, - "duration": 14 - }, - { - "name": "Require(28) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/agent.js", - "start": 1737425753678, - "pid": 95228, - "index": 36, - "end": 1737425753679, - "duration": 1 - }, - { - "name": "Require(29) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-onerror@2.4.0/node_modules/egg-onerror/agent.js", - "start": 1737425753680, - "pid": 95228, - "index": 37, - "end": 1737425753682, - "duration": 2 - }, - { - "name": "Require(30) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+watcher@4.0.4/node_modules/@eggjs/watcher/dist/esm/agent.js", - "start": 1737425753682, - "pid": 95228, - "index": 38, - "end": 1737425753683, - "duration": 1 - }, - { - "name": "Require(31) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+schedule@5.0.2/node_modules/@eggjs/schedule/dist/esm/agent.js", - "start": 1737425753683, - "pid": 95228, - "index": 39, - "end": 1737425753684, - "duration": 1 - }, - { - "name": "Require(32) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+development@4.0.0/node_modules/@eggjs/development/dist/esm/agent.js", - "start": 1737425753685, - "pid": 95228, - "index": 40, - "end": 1737425753688, - "duration": 3 - }, - { - "name": "Require(33) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-logrotator@3.2.0/node_modules/egg-logrotator/agent.js", - "start": 1737425753688, - "pid": 95228, - "index": 41, - "end": 1737425753688, - "duration": 0 - }, - { - "name": "Require(34) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/agent.js", - "start": 1737425753689, - "pid": 95228, - "index": 42, - "end": 1737425753690, - "duration": 1 - }, - { - "name": "Did Load in /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+watcher@4.0.4/node_modules/@eggjs/watcher/dist/esm/agent.js:didLoad", - "start": 1737425753697, - "pid": 95228, - "index": 43, - "end": 1737425753699, - "duration": 2 - }, - { - "name": "Did Load in /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+development@4.0.0/node_modules/@eggjs/development/dist/esm/agent.js:didLoad", - "start": 1737425753697, - "pid": 95228, - "index": 44, - "end": 1737425753706, - "duration": 9 - } -] \ No newline at end of file diff --git a/example/hello/run/application_config.json b/example/hello/run/application_config.json deleted file mode 100644 index 2cf7748..0000000 --- a/example/hello/run/application_config.json +++ /dev/null @@ -1,499 +0,0 @@ -{ - "config": { - "middleware": [], - "coreMiddleware": [ - "meta", - "siteFile", - "notfound", - "static", - "bodyParser", - "overrideMethod", - "session", - "securities", - "eggLoaderTrace" - ], - "session": { - "key": "EGG_SESS", - "maxAge": 86400000, - "autoCommit": true, - "overwrite": true, - "httpOnly": true, - "signed": true, - "rolling": false, - "renew": false, - "encode": "", - "decode": "", - "logValue": true, - "genid": "" - }, - "security": { - "domainWhiteList": [], - "protocolWhiteList": [], - "defaultMiddleware": [ - "csrf", - "hsts", - "methodnoallow", - "noopen", - "nosniff", - "csp", - "xssProtection", - "xframe", - "dta" - ], - "csrf": { - "enable": true, - "type": "ctoken", - "ignoreJSON": false, - "cookieName": "csrfToken", - "sessionName": "csrfToken", - "headerName": "x-csrf-token", - "bodyName": "_csrf", - "queryName": "_csrf", - "rotateWhenInvalid": false, - "useSession": false, - "supportedRequests": [ - { - "path": {}, - "methods": [ - "POST", - "PATCH", - "DELETE", - "PUT", - "CONNECT" - ] - } - ], - "refererWhiteList": [], - "cookieOptions": { - "signed": false, - "httpOnly": false, - "overwrite": true - }, - "matching": "" - }, - "xframe": { - "enable": true, - "value": "SAMEORIGIN", - "matching": "" - }, - "hsts": { - "enable": false, - "maxAge": 31536000, - "includeSubdomains": false - }, - "methodnoallow": { - "enable": true, - "matching": "" - }, - "noopen": { - "enable": true, - "matching": "" - }, - "nosniff": { - "enable": true, - "matching": "" - }, - "xssProtection": { - "enable": true, - "value": "1; mode=block", - "matching": "" - }, - "csp": { - "enable": false, - "policy": {} - }, - "referrerPolicy": { - "enable": false, - "value": "no-referrer-when-downgrade" - }, - "dta": { - "enable": true, - "matching": "" - }, - "ssrf": {} - }, - "helper": { - "shtml": {} - }, - "jsonp": { - "limit": 50, - "callback": [ - "_callback", - "callback" - ], - "csrf": false - }, - "onerror": { - "errorPageUrl": "", - "appErrorFilter": null, - "templatePath": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-onerror@2.4.0/node_modules/egg-onerror/lib/onerror_page.mustache" - }, - "i18n": { - "defaultLocale": "en-us", - "dirs": [ - "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+session@4.0.0/node_modules/@eggjs/session/dist/esm/config/locales", - "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/locales", - "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+jsonp@3.0.0/node_modules/@eggjs/jsonp/dist/esm/config/locales", - "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-onerror@2.4.0/node_modules/egg-onerror/config/locales", - "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+i18n@3.0.1/node_modules/@eggjs/i18n/dist/esm/config/locales", - "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+watcher@4.0.4/node_modules/@eggjs/watcher/dist/esm/config/locales", - "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+schedule@5.0.2/node_modules/@eggjs/schedule/dist/esm/config/locales", - "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-multipart@3.4.0/node_modules/egg-multipart/config/locales", - "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+development@4.0.0/node_modules/@eggjs/development/dist/esm/config/locales", - "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-logrotator@3.2.0/node_modules/egg-logrotator/config/locales", - "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+static@3.0.0/node_modules/@eggjs/static/dist/esm/config/locales", - "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-view@2.1.4/node_modules/egg-view/config/locales", - "../../../../../config/locales", - "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/locales", - "/Users/fengmk2/git/github.com/eggjs/redis/example/hello/config/locales" - ], - "queryField": "locale", - "cookieField": "locale", - "cookieDomain": "", - "cookieMaxAge": 31557600000, - "localeAlias": {}, - "writeCookie": true - }, - "watcher": { - "type": "development", - "eventSources": { - "default": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+watcher@4.0.4/node_modules/@eggjs/watcher/dist/esm/lib/event-sources/default", - "development": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+watcher@4.0.4/node_modules/@eggjs/watcher/dist/esm/lib/event-sources/development" - } - }, - "customLogger": { - "scheduleLogger": { - "consoleLevel": "NONE", - "file": "egg-schedule.log" - } - }, - "schedule": { - "directory": [] - }, - "multipart": { - "mode": "stream", - "autoFields": false, - "defaultCharset": "utf8", - "defaultParamCharset": "utf8", - "fieldNameSize": 100, - "fieldSize": 102400, - "fields": 10, - "fileSize": 10485760, - "files": 10, - "fileExtensions": [], - "whitelist": null, - "allowArrayField": false, - "tmpdir": "/var/folders/g8/c087s6rn3n16q32vnxbs47lh0000gn/T/egg-multipart-tmp/hello-redis", - "cleanSchedule": { - "cron": "0 30 4 * * *", - "disable": false - }, - "checkFile": "" - }, - "development": { - "watchDirs": [], - "ignoreDirs": [], - "fastReady": false, - "reloadOnDebug": true, - "overrideDefault": false, - "overrideIgnore": false - }, - "logrotator": { - "filesRotateByHour": null, - "hourDelimiter": "-", - "filesRotateBySize": null, - "maxFileSize": 52428800, - "maxFiles": 10, - "rotateDuration": 60000, - "maxDays": 31 - }, - "static": { - "prefix": "/public/", - "dir": "/Users/fengmk2/git/github.com/eggjs/redis/example/hello/app/public", - "dynamic": true, - "preload": false, - "buffer": false, - "maxFiles": 1000 - }, - "view": { - "root": "/Users/fengmk2/git/github.com/eggjs/redis/example/hello/app/view", - "cache": false, - "defaultExtension": ".html", - "defaultViewEngine": "", - "mapping": {} - }, - "env": "local", - "name": "hello-redis", - "keys": "", - "cookies": {}, - "proxy": false, - "maxIpsCount": 0, - "maxProxyCount": 0, - "protocolHeaders": "x-forwarded-proto", - "ipHeaders": "x-forwarded-for", - "hostHeaders": "", - "pkg": { - "name": "hello-redis", - "type": "module" - }, - "baseDir": "/Users/fengmk2/git/github.com/eggjs/redis/example/hello", - "HOME": "/Users/fengmk2", - "rundir": "/Users/fengmk2/git/github.com/eggjs/redis/example/hello/run", - "dump": { - "ignore": "", - "timing": { - "slowBootActionMinDuration": 5000 - } - }, - "confusedConfigurations": { - "bodyparser": "bodyParser", - "notFound": "notfound", - "sitefile": "siteFile", - "middlewares": "middleware", - "httpClient": "httpclient" - }, - "notfound": { - "enable": true, - "pageUrl": "" - }, - "siteFile": { - "enable": true, - "/favicon.ico": "file:///Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/favicon.png", - "cacheControl": "public, max-age=2592000" - }, - "bodyParser": { - "enable": true, - "encoding": "utf8", - "formLimit": "1mb", - "jsonLimit": "1mb", - "textLimit": "1mb", - "strict": true, - "queryString": { - "arrayLimit": 100, - "depth": 5, - "parameterLimit": 1000 - }, - "onProtoPoisoning": "error", - "returnRawBody": true - }, - "logger": { - "dir": "/Users/fengmk2/git/github.com/eggjs/redis/example/hello/logs/hello-redis", - "encoding": "utf8", - "env": "local", - "level": "INFO", - "consoleLevel": "INFO", - "disableConsoleAfterReady": false, - "outputJSON": false, - "buffer": true, - "appLogName": "hello-redis-web.log", - "coreLogName": "egg-web.log", - "agentLogName": "egg-agent.log", - "errorLogName": "common-error.log", - "coreLogger": { - "consoleLevel": "WARN" - }, - "allowDebugAtProd": false, - "enableFastContextLogger": true - }, - "httpclient": { - "request": { - "timeout": 5000 - } - }, - "meta": { - "enable": true, - "logging": false - }, - "workerStartTimeout": 600000, - "serverTimeout": null, - "cluster": { - "listen": { - "path": "", - "port": 7001, - "hostname": "" - } - }, - "clusterClient": { - "maxWaitTime": 60000, - "responseTimeout": 60000 - }, - "coreMiddlewares": "~config~coreMiddleware", - "appMiddlewares": "~config~middleware", - "appMiddleware": "~config~middleware" - }, - "plugins": { - "onerror": { - "enable": true, - "package": "egg-onerror", - "name": "onerror", - "dependencies": [], - "optionalDependencies": [ - "jsonp" - ], - "env": [], - "from": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/plugin.js", - "path": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-onerror@2.4.0/node_modules/egg-onerror", - "version": "2.4.0" - }, - "session": { - "enable": true, - "package": "@eggjs/session", - "name": "session", - "dependencies": [], - "optionalDependencies": [], - "env": [], - "from": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/plugin.js", - "path": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+session@4.0.0/node_modules/@eggjs/session/dist/esm", - "version": "4.0.0" - }, - "i18n": { - "enable": true, - "package": "@eggjs/i18n", - "name": "i18n", - "dependencies": [], - "optionalDependencies": [], - "env": [], - "from": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/plugin.js", - "path": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+i18n@3.0.1/node_modules/@eggjs/i18n/dist/esm", - "version": "3.0.1" - }, - "watcher": { - "enable": true, - "package": "@eggjs/watcher", - "name": "watcher", - "dependencies": [], - "optionalDependencies": [], - "env": [], - "from": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/plugin.js", - "path": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+watcher@4.0.4/node_modules/@eggjs/watcher/dist/esm", - "version": "4.0.4", - "dependents": [ - "development" - ] - }, - "multipart": { - "enable": true, - "package": "egg-multipart", - "name": "multipart", - "dependencies": [], - "optionalDependencies": [ - "schedule" - ], - "env": [], - "from": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/plugin.js", - "path": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-multipart@3.4.0/node_modules/egg-multipart", - "version": "3.4.0" - }, - "security": { - "enable": true, - "package": "@eggjs/security", - "name": "security", - "dependencies": [], - "optionalDependencies": [ - "session" - ], - "env": [], - "from": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/plugin.js", - "path": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm", - "version": "4.0.0" - }, - "development": { - "enable": true, - "package": "@eggjs/development", - "name": "development", - "dependencies": [ - "watcher" - ], - "optionalDependencies": [], - "env": [ - "local" - ], - "from": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/plugin.js", - "path": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+development@4.0.0/node_modules/@eggjs/development/dist/esm", - "version": "4.0.0" - }, - "logrotator": { - "enable": true, - "package": "egg-logrotator", - "name": "logrotator", - "dependencies": [ - "schedule" - ], - "optionalDependencies": [], - "env": [], - "from": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/plugin.js", - "path": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-logrotator@3.2.0/node_modules/egg-logrotator", - "version": "3.2.0" - }, - "schedule": { - "enable": true, - "package": "@eggjs/schedule", - "name": "schedule", - "dependencies": [], - "optionalDependencies": [], - "env": [], - "from": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/plugin.js", - "path": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+schedule@5.0.2/node_modules/@eggjs/schedule/dist/esm", - "version": "5.0.2", - "dependents": [ - "logrotator" - ] - }, - "static": { - "enable": true, - "package": "@eggjs/static", - "name": "static", - "dependencies": [], - "optionalDependencies": [], - "env": [], - "from": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/plugin.js", - "path": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+static@3.0.0/node_modules/@eggjs/static/dist/esm", - "version": "3.0.0" - }, - "jsonp": { - "enable": true, - "package": "@eggjs/jsonp", - "name": "jsonp", - "dependencies": [], - "optionalDependencies": [ - "security" - ], - "env": [], - "from": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/plugin.js", - "path": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+jsonp@3.0.0/node_modules/@eggjs/jsonp/dist/esm", - "version": "3.0.0" - }, - "view": { - "enable": true, - "package": "egg-view", - "name": "view", - "dependencies": [], - "optionalDependencies": [], - "env": [], - "from": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/plugin.js", - "path": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-view@2.1.4/node_modules/egg-view", - "version": "2.1.4" - }, - "redis": { - "enable": true, - "path": "../../../../..", - "name": "redis", - "dependencies": [], - "optionalDependencies": [], - "env": [], - "from": "/Users/fengmk2/git/github.com/eggjs/redis/example/hello/config/plugin.ts" - } - }, - "appInfo": { - "name": "hello-redis", - "baseDir": "/Users/fengmk2/git/github.com/eggjs/redis/example/hello", - "env": "local", - "scope": "", - "HOME": "/Users/fengmk2", - "pkg": { - "name": "hello-redis", - "type": "module" - }, - "root": "/Users/fengmk2/git/github.com/eggjs/redis/example/hello" - } -} \ No newline at end of file diff --git a/example/hello/run/application_config_meta.json b/example/hello/run/application_config_meta.json deleted file mode 100644 index 3c1df3b..0000000 --- a/example/hello/run/application_config_meta.json +++ /dev/null @@ -1,259 +0,0 @@ -{ - "keys": "/Users/fengmk2/git/github.com/eggjs/redis/example/hello/config/config.default.ts", - "session": { - "key": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+session@4.0.0/node_modules/@eggjs/session/dist/esm/config/config.default.js", - "maxAge": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+session@4.0.0/node_modules/@eggjs/session/dist/esm/config/config.default.js", - "autoCommit": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+session@4.0.0/node_modules/@eggjs/session/dist/esm/config/config.default.js", - "overwrite": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+session@4.0.0/node_modules/@eggjs/session/dist/esm/config/config.default.js", - "httpOnly": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+session@4.0.0/node_modules/@eggjs/session/dist/esm/config/config.default.js", - "signed": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+session@4.0.0/node_modules/@eggjs/session/dist/esm/config/config.default.js", - "rolling": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+session@4.0.0/node_modules/@eggjs/session/dist/esm/config/config.default.js", - "renew": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+session@4.0.0/node_modules/@eggjs/session/dist/esm/config/config.default.js", - "encode": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+session@4.0.0/node_modules/@eggjs/session/dist/esm/config/config.default.js", - "decode": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+session@4.0.0/node_modules/@eggjs/session/dist/esm/config/config.default.js", - "logValue": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+session@4.0.0/node_modules/@eggjs/session/dist/esm/config/config.default.js" - }, - "security": { - "domainWhiteList": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js", - "protocolWhiteList": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js", - "defaultMiddleware": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js", - "csrf": { - "enable": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js", - "type": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js", - "ignoreJSON": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js", - "cookieName": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js", - "sessionName": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js", - "headerName": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js", - "bodyName": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js", - "queryName": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js", - "rotateWhenInvalid": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js", - "useSession": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js", - "supportedRequests": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js", - "refererWhiteList": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js", - "cookieOptions": { - "signed": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js", - "httpOnly": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js", - "overwrite": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js" - } - }, - "xframe": { - "enable": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js", - "value": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js" - }, - "hsts": { - "enable": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.local.js", - "maxAge": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js", - "includeSubdomains": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js" - }, - "methodnoallow": { - "enable": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js" - }, - "noopen": { - "enable": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js" - }, - "nosniff": { - "enable": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js" - }, - "xssProtection": { - "enable": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js", - "value": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js" - }, - "csp": { - "enable": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js", - "policy": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js" - }, - "referrerPolicy": { - "enable": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js", - "value": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js" - }, - "dta": { - "enable": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js" - }, - "ssrf": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js" - }, - "helper": { - "shtml": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js" - }, - "jsonp": { - "limit": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+jsonp@3.0.0/node_modules/@eggjs/jsonp/dist/esm/config/config.default.js", - "callback": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+jsonp@3.0.0/node_modules/@eggjs/jsonp/dist/esm/config/config.default.js", - "csrf": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+jsonp@3.0.0/node_modules/@eggjs/jsonp/dist/esm/config/config.default.js" - }, - "onerror": { - "errorPageUrl": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-onerror@2.4.0/node_modules/egg-onerror/config/config.default.js", - "appErrorFilter": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-onerror@2.4.0/node_modules/egg-onerror/config/config.default.js", - "templatePath": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-onerror@2.4.0/node_modules/egg-onerror/config/config.default.js" - }, - "i18n": { - "defaultLocale": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+i18n@3.0.1/node_modules/@eggjs/i18n/dist/esm/config/config.default.js", - "dirs": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+i18n@3.0.1/node_modules/@eggjs/i18n/dist/esm/config/config.default.js", - "queryField": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+i18n@3.0.1/node_modules/@eggjs/i18n/dist/esm/config/config.default.js", - "cookieField": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+i18n@3.0.1/node_modules/@eggjs/i18n/dist/esm/config/config.default.js", - "cookieDomain": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+i18n@3.0.1/node_modules/@eggjs/i18n/dist/esm/config/config.default.js", - "cookieMaxAge": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+i18n@3.0.1/node_modules/@eggjs/i18n/dist/esm/config/config.default.js", - "localeAlias": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+i18n@3.0.1/node_modules/@eggjs/i18n/dist/esm/config/config.default.js", - "writeCookie": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+i18n@3.0.1/node_modules/@eggjs/i18n/dist/esm/config/config.default.js" - }, - "watcher": { - "type": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+watcher@4.0.4/node_modules/@eggjs/watcher/dist/esm/config/config.local.js", - "eventSources": { - "default": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+watcher@4.0.4/node_modules/@eggjs/watcher/dist/esm/config/config.default.js", - "development": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+watcher@4.0.4/node_modules/@eggjs/watcher/dist/esm/config/config.default.js" - } - }, - "customLogger": { - "scheduleLogger": { - "consoleLevel": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+schedule@5.0.2/node_modules/@eggjs/schedule/dist/esm/config/config.default.js", - "file": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+schedule@5.0.2/node_modules/@eggjs/schedule/dist/esm/config/config.default.js" - } - }, - "schedule": { - "directory": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+schedule@5.0.2/node_modules/@eggjs/schedule/dist/esm/config/config.default.js" - }, - "multipart": { - "mode": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-multipart@3.4.0/node_modules/egg-multipart/config/config.default.js", - "autoFields": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-multipart@3.4.0/node_modules/egg-multipart/config/config.default.js", - "defaultCharset": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-multipart@3.4.0/node_modules/egg-multipart/config/config.default.js", - "defaultParamCharset": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-multipart@3.4.0/node_modules/egg-multipart/config/config.default.js", - "fieldNameSize": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-multipart@3.4.0/node_modules/egg-multipart/config/config.default.js", - "fieldSize": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-multipart@3.4.0/node_modules/egg-multipart/config/config.default.js", - "fields": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-multipart@3.4.0/node_modules/egg-multipart/config/config.default.js", - "fileSize": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-multipart@3.4.0/node_modules/egg-multipart/config/config.default.js", - "files": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-multipart@3.4.0/node_modules/egg-multipart/config/config.default.js", - "fileExtensions": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-multipart@3.4.0/node_modules/egg-multipart/config/config.default.js", - "whitelist": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-multipart@3.4.0/node_modules/egg-multipart/config/config.default.js", - "allowArrayField": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-multipart@3.4.0/node_modules/egg-multipart/config/config.default.js", - "tmpdir": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-multipart@3.4.0/node_modules/egg-multipart/config/config.default.js", - "cleanSchedule": { - "cron": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-multipart@3.4.0/node_modules/egg-multipart/config/config.default.js", - "disable": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-multipart@3.4.0/node_modules/egg-multipart/config/config.default.js" - } - }, - "development": { - "watchDirs": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+development@4.0.0/node_modules/@eggjs/development/dist/esm/config/config.default.js", - "ignoreDirs": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+development@4.0.0/node_modules/@eggjs/development/dist/esm/config/config.default.js", - "fastReady": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+development@4.0.0/node_modules/@eggjs/development/dist/esm/config/config.default.js", - "reloadOnDebug": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+development@4.0.0/node_modules/@eggjs/development/dist/esm/config/config.default.js", - "overrideDefault": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+development@4.0.0/node_modules/@eggjs/development/dist/esm/config/config.default.js", - "overrideIgnore": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+development@4.0.0/node_modules/@eggjs/development/dist/esm/config/config.default.js" - }, - "logrotator": { - "filesRotateByHour": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-logrotator@3.2.0/node_modules/egg-logrotator/config/config.default.js", - "hourDelimiter": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-logrotator@3.2.0/node_modules/egg-logrotator/config/config.default.js", - "filesRotateBySize": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-logrotator@3.2.0/node_modules/egg-logrotator/config/config.default.js", - "maxFileSize": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-logrotator@3.2.0/node_modules/egg-logrotator/config/config.default.js", - "maxFiles": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-logrotator@3.2.0/node_modules/egg-logrotator/config/config.default.js", - "rotateDuration": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-logrotator@3.2.0/node_modules/egg-logrotator/config/config.default.js", - "maxDays": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-logrotator@3.2.0/node_modules/egg-logrotator/config/config.default.js" - }, - "static": { - "prefix": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+static@3.0.0/node_modules/@eggjs/static/dist/esm/config/config.default.js", - "dir": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+static@3.0.0/node_modules/@eggjs/static/dist/esm/config/config.default.js", - "dynamic": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+static@3.0.0/node_modules/@eggjs/static/dist/esm/config/config.default.js", - "preload": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+static@3.0.0/node_modules/@eggjs/static/dist/esm/config/config.default.js", - "buffer": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+static@3.0.0/node_modules/@eggjs/static/dist/esm/config/config.default.js", - "maxFiles": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+static@3.0.0/node_modules/@eggjs/static/dist/esm/config/config.default.js" - }, - "view": { - "root": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-view@2.1.4/node_modules/egg-view/config/config.default.js", - "cache": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-view@2.1.4/node_modules/egg-view/config/config.local.js", - "defaultExtension": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-view@2.1.4/node_modules/egg-view/config/config.default.js", - "defaultViewEngine": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-view@2.1.4/node_modules/egg-view/config/config.default.js", - "mapping": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-view@2.1.4/node_modules/egg-view/config/config.default.js" - }, - "env": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", - "name": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", - "cookies": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", - "proxy": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", - "maxIpsCount": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", - "maxProxyCount": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", - "protocolHeaders": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", - "ipHeaders": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", - "hostHeaders": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", - "pkg": { - "name": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", - "type": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js" - }, - "baseDir": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", - "HOME": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", - "rundir": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", - "dump": { - "ignore": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", - "timing": { - "slowBootActionMinDuration": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js" - } - }, - "confusedConfigurations": { - "bodyparser": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", - "notFound": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", - "sitefile": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", - "middlewares": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", - "httpClient": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js" - }, - "notfound": { - "enable": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", - "pageUrl": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js" - }, - "siteFile": { - "enable": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", - "/favicon.ico": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", - "cacheControl": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js" - }, - "bodyParser": { - "enable": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", - "encoding": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", - "formLimit": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", - "jsonLimit": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", - "textLimit": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", - "strict": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", - "queryString": { - "arrayLimit": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", - "depth": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", - "parameterLimit": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js" - }, - "onProtoPoisoning": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", - "onerror": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js" - }, - "logger": { - "dir": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", - "encoding": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", - "env": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", - "level": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", - "consoleLevel": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", - "disableConsoleAfterReady": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", - "outputJSON": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", - "buffer": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", - "appLogName": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", - "coreLogName": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", - "agentLogName": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", - "errorLogName": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", - "coreLogger": { - "consoleLevel": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.local.js" - }, - "allowDebugAtProd": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", - "enableFastContextLogger": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js" - }, - "httpclient": { - "request": { - "timeout": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js" - } - }, - "meta": { - "enable": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", - "logging": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js" - }, - "coreMiddleware": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", - "workerStartTimeout": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", - "serverTimeout": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", - "cluster": { - "listen": { - "path": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", - "port": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", - "hostname": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js" - } - }, - "clusterClient": { - "maxWaitTime": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", - "responseTimeout": "/Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js" - } -} \ No newline at end of file diff --git a/example/hello/run/application_timing_95243.json b/example/hello/run/application_timing_95243.json deleted file mode 100644 index 94eb2ff..0000000 --- a/example/hello/run/application_timing_95243.json +++ /dev/null @@ -1,546 +0,0 @@ -[ - { - "name": "Process Start", - "start": 1737425753730, - "pid": 95243, - "index": 0, - "end": 1737425754156, - "duration": 426 - }, - { - "name": "application Start", - "start": 1737425754156, - "pid": 95243, - "index": 1, - "end": 1737425754994, - "duration": 838 - }, - { - "name": "Before Start in load files", - "start": 1737425754159, - "pid": 95243, - "index": 2, - "end": 1737425754994, - "duration": 835 - }, - { - "name": "Load Plugin", - "start": 1737425754159, - "pid": 95243, - "index": 3, - "end": 1737425754798, - "duration": 639 - }, - { - "name": "Load Config", - "start": 1737425754798, - "pid": 95243, - "index": 4, - "end": 1737425754827, - "duration": 29 - }, - { - "name": "Require(0) config/config.default.ts", - "start": 1737425754798, - "pid": 95243, - "index": 5, - "end": 1737425754799, - "duration": 1 - }, - { - "name": "Require(1) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+session@4.0.0/node_modules/@eggjs/session/dist/esm/config/config.default.js", - "start": 1737425754800, - "pid": 95243, - "index": 6, - "end": 1737425754800, - "duration": 0 - }, - { - "name": "Require(2) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.default.js", - "start": 1737425754800, - "pid": 95243, - "index": 7, - "end": 1737425754804, - "duration": 4 - }, - { - "name": "Require(3) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+jsonp@3.0.0/node_modules/@eggjs/jsonp/dist/esm/config/config.default.js", - "start": 1737425754804, - "pid": 95243, - "index": 8, - "end": 1737425754804, - "duration": 0 - }, - { - "name": "Require(4) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-onerror@2.4.0/node_modules/egg-onerror/config/config.default.js", - "start": 1737425754804, - "pid": 95243, - "index": 9, - "end": 1737425754805, - "duration": 1 - }, - { - "name": "Require(5) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+i18n@3.0.1/node_modules/@eggjs/i18n/dist/esm/config/config.default.js", - "start": 1737425754805, - "pid": 95243, - "index": 10, - "end": 1737425754805, - "duration": 0 - }, - { - "name": "Require(6) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+watcher@4.0.4/node_modules/@eggjs/watcher/dist/esm/config/config.default.js", - "start": 1737425754805, - "pid": 95243, - "index": 11, - "end": 1737425754806, - "duration": 1 - }, - { - "name": "Require(7) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+schedule@5.0.2/node_modules/@eggjs/schedule/dist/esm/config/config.default.js", - "start": 1737425754806, - "pid": 95243, - "index": 12, - "end": 1737425754806, - "duration": 0 - }, - { - "name": "Require(8) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-multipart@3.4.0/node_modules/egg-multipart/config/config.default.js", - "start": 1737425754807, - "pid": 95243, - "index": 13, - "end": 1737425754807, - "duration": 0 - }, - { - "name": "Require(9) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+development@4.0.0/node_modules/@eggjs/development/dist/esm/config/config.default.js", - "start": 1737425754807, - "pid": 95243, - "index": 14, - "end": 1737425754808, - "duration": 1 - }, - { - "name": "Require(10) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-logrotator@3.2.0/node_modules/egg-logrotator/config/config.default.js", - "start": 1737425754808, - "pid": 95243, - "index": 15, - "end": 1737425754808, - "duration": 0 - }, - { - "name": "Require(11) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+static@3.0.0/node_modules/@eggjs/static/dist/esm/config/config.default.js", - "start": 1737425754808, - "pid": 95243, - "index": 16, - "end": 1737425754809, - "duration": 1 - }, - { - "name": "Require(12) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-view@2.1.4/node_modules/egg-view/config/config.default.js", - "start": 1737425754809, - "pid": 95243, - "index": 17, - "end": 1737425754810, - "duration": 1 - }, - { - "name": "Require(13) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.default.js", - "start": 1737425754811, - "pid": 95243, - "index": 18, - "end": 1737425754811, - "duration": 0 - }, - { - "name": "Require(14) config/config.default.ts", - "start": 1737425754812, - "pid": 95243, - "index": 19, - "end": 1737425754812, - "duration": 0 - }, - { - "name": "Require(15) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/config/config.local.js", - "start": 1737425754812, - "pid": 95243, - "index": 20, - "end": 1737425754813, - "duration": 1 - }, - { - "name": "Require(16) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+watcher@4.0.4/node_modules/@eggjs/watcher/dist/esm/config/config.local.js", - "start": 1737425754821, - "pid": 95243, - "index": 21, - "end": 1737425754824, - "duration": 3 - }, - { - "name": "Require(17) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-view@2.1.4/node_modules/egg-view/config/config.local.js", - "start": 1737425754825, - "pid": 95243, - "index": 22, - "end": 1737425754826, - "duration": 1 - }, - { - "name": "Require(18) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/config/config.local.js", - "start": 1737425754826, - "pid": 95243, - "index": 23, - "end": 1737425754827, - "duration": 1 - }, - { - "name": "Load extend/application.js", - "start": 1737425754827, - "pid": 95243, - "index": 24, - "end": 1737425754845, - "duration": 18 - }, - { - "name": "Require(19) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+session@4.0.0/node_modules/@eggjs/session/dist/esm/app/extend/application.js", - "start": 1737425754827, - "pid": 95243, - "index": 25, - "end": 1737425754828, - "duration": 1 - }, - { - "name": "Require(20) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/app/extend/application.js", - "start": 1737425754828, - "pid": 95243, - "index": 26, - "end": 1737425754828, - "duration": 0 - }, - { - "name": "Require(21) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+jsonp@3.0.0/node_modules/@eggjs/jsonp/dist/esm/app/extend/application.js", - "start": 1737425754828, - "pid": 95243, - "index": 27, - "end": 1737425754830, - "duration": 2 - }, - { - "name": "Require(22) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+i18n@3.0.1/node_modules/@eggjs/i18n/dist/esm/app/extend/application.js", - "start": 1737425754830, - "pid": 95243, - "index": 28, - "end": 1737425754831, - "duration": 1 - }, - { - "name": "Require(23) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+schedule@5.0.2/node_modules/@eggjs/schedule/dist/esm/app/extend/application.js", - "start": 1737425754831, - "pid": 95243, - "index": 29, - "end": 1737425754835, - "duration": 4 - }, - { - "name": "Require(24) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-logrotator@3.2.0/node_modules/egg-logrotator/app/extend/application.js", - "start": 1737425754836, - "pid": 95243, - "index": 30, - "end": 1737425754839, - "duration": 3 - }, - { - "name": "Require(25) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-view@2.1.4/node_modules/egg-view/app/extend/application.js", - "start": 1737425754840, - "pid": 95243, - "index": 31, - "end": 1737425754841, - "duration": 1 - }, - { - "name": "Load extend/request.js", - "start": 1737425754845, - "pid": 95243, - "index": 32, - "end": 1737425754858, - "duration": 13 - }, - { - "name": "Require(26) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/app/extend/request.js", - "start": 1737425754847, - "pid": 95243, - "index": 33, - "end": 1737425754848, - "duration": 1 - }, - { - "name": "Load extend/response.js", - "start": 1737425754858, - "pid": 95243, - "index": 34, - "end": 1737425754871, - "duration": 13 - }, - { - "name": "Require(27) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/app/extend/response.js", - "start": 1737425754858, - "pid": 95243, - "index": 35, - "end": 1737425754860, - "duration": 2 - }, - { - "name": "Require(28) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/app/extend/response.js", - "start": 1737425754863, - "pid": 95243, - "index": 36, - "end": 1737425754867, - "duration": 4 - }, - { - "name": "Load extend/context.js", - "start": 1737425754871, - "pid": 95243, - "index": 37, - "end": 1737425754886, - "duration": 15 - }, - { - "name": "Require(29) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/app/extend/context.js", - "start": 1737425754872, - "pid": 95243, - "index": 38, - "end": 1737425754872, - "duration": 0 - }, - { - "name": "Require(30) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+jsonp@3.0.0/node_modules/@eggjs/jsonp/dist/esm/app/extend/context.js", - "start": 1737425754872, - "pid": 95243, - "index": 39, - "end": 1737425754875, - "duration": 3 - }, - { - "name": "Require(31) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+i18n@3.0.1/node_modules/@eggjs/i18n/dist/esm/app/extend/context.js", - "start": 1737425754875, - "pid": 95243, - "index": 40, - "end": 1737425754876, - "duration": 1 - }, - { - "name": "Require(32) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-multipart@3.4.0/node_modules/egg-multipart/app/extend/context.js", - "start": 1737425754877, - "pid": 95243, - "index": 41, - "end": 1737425754880, - "duration": 3 - }, - { - "name": "Require(33) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-view@2.1.4/node_modules/egg-view/app/extend/context.js", - "start": 1737425754881, - "pid": 95243, - "index": 42, - "end": 1737425754882, - "duration": 1 - }, - { - "name": "Require(34) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/app/extend/context.js", - "start": 1737425754882, - "pid": 95243, - "index": 43, - "end": 1737425754882, - "duration": 0 - }, - { - "name": "Load extend/helper.js", - "start": 1737425754886, - "pid": 95243, - "index": 44, - "end": 1737425754901, - "duration": 15 - }, - { - "name": "Require(35) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/app/extend/helper.js", - "start": 1737425754886, - "pid": 95243, - "index": 45, - "end": 1737425754892, - "duration": 6 - }, - { - "name": "Require(36) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg@4.0.3/node_modules/egg/dist/esm/app/extend/helper.js", - "start": 1737425754894, - "pid": 95243, - "index": 46, - "end": 1737425754895, - "duration": 1 - }, - { - "name": "Load app.js", - "start": 1737425754901, - "pid": 95243, - "index": 47, - "end": 1737425754920, - "duration": 19 - }, - { - "name": "Require(37) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+session@4.0.0/node_modules/@eggjs/session/dist/esm/app.js", - "start": 1737425754901, - "pid": 95243, - "index": 48, - "end": 1737425754904, - "duration": 3 - }, - { - "name": "Require(38) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+security@4.0.0/node_modules/@eggjs/security/dist/esm/app.js", - "start": 1737425754904, - "pid": 95243, - "index": 49, - "end": 1737425754905, - "duration": 1 - }, - { - "name": "Require(39) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-onerror@2.4.0/node_modules/egg-onerror/app.js", - "start": 1737425754905, - "pid": 95243, - "index": 50, - "end": 1737425754909, - "duration": 4 - }, - { - "name": "Require(40) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+i18n@3.0.1/node_modules/@eggjs/i18n/dist/esm/app.js", - "start": 1737425754909, - "pid": 95243, - "index": 51, - "end": 1737425754914, - "duration": 5 - }, - { - "name": "Require(41) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+watcher@4.0.4/node_modules/@eggjs/watcher/dist/esm/app.js", - "start": 1737425754914, - "pid": 95243, - "index": 52, - "end": 1737425754915, - "duration": 1 - }, - { - "name": "Require(42) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+schedule@5.0.2/node_modules/@eggjs/schedule/dist/esm/app.js", - "start": 1737425754915, - "pid": 95243, - "index": 53, - "end": 1737425754916, - "duration": 1 - }, - { - "name": "Require(43) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-multipart@3.4.0/node_modules/egg-multipart/app.js", - "start": 1737425754916, - "pid": 95243, - "index": 54, - "end": 1737425754916, - "duration": 0 - }, - { - "name": "Require(44) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+development@4.0.0/node_modules/@eggjs/development/dist/esm/app.js", - "start": 1737425754916, - "pid": 95243, - "index": 55, - "end": 1737425754917, - "duration": 1 - }, - { - "name": "Require(45) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/egg-logrotator@3.2.0/node_modules/egg-logrotator/app.js", - "start": 1737425754917, - "pid": 95243, - "index": 56, - "end": 1737425754917, - "duration": 0 - }, - { - "name": "Require(46) /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+static@3.0.0/node_modules/@eggjs/static/dist/esm/app.js", - "start": 1737425754917, - "pid": 95243, - "index": 57, - "end": 1737425754918, - "duration": 1 - }, - { - "name": "Did Load in /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+i18n@3.0.1/node_modules/@eggjs/i18n/dist/esm/app.js:didLoad", - "start": 1737425754926, - "pid": 95243, - "index": 58, - "end": 1737425754940, - "duration": 14 - }, - { - "name": "Did Load in /Users/fengmk2/git/github.com/eggjs/redis/node_modules/.store/@eggjs+watcher@4.0.4/node_modules/@eggjs/watcher/dist/esm/app.js:didLoad", - "start": 1737425754926, - "pid": 95243, - "index": 59, - "end": 1737425754937, - "duration": 11 - }, - { - "name": "Load Service", - "start": 1737425754926, - "pid": 95243, - "index": 60, - "end": 1737425754929, - "duration": 3 - }, - { - "name": "Load \"service\" to Context", - "start": 1737425754927, - "pid": 95243, - "index": 61, - "end": 1737425754929, - "duration": 2 - }, - { - "name": "Load Middleware", - "start": 1737425754929, - "pid": 95243, - "index": 62, - "end": 1737425754966, - "duration": 37 - }, - { - "name": "Load \"middlewares\" to Application", - "start": 1737425754929, - "pid": 95243, - "index": 63, - "end": 1737425754965, - "duration": 36 - }, - { - "name": "Load Controller", - "start": 1737425754966, - "pid": 95243, - "index": 64, - "end": 1737425754967, - "duration": 1 - }, - { - "name": "Load \"controller\" to Application", - "start": 1737425754966, - "pid": 95243, - "index": 65, - "end": 1737425754967, - "duration": 1 - }, - { - "name": "Load Router", - "start": 1737425754967, - "pid": 95243, - "index": 66, - "end": 1737425754994, - "duration": 27 - }, - { - "name": "Require(47) app/router.ts", - "start": 1737425754967, - "pid": 95243, - "index": 67, - "end": 1737425754993, - "duration": 26 - } -] \ No newline at end of file diff --git a/example/hello/run/router.json b/example/hello/run/router.json deleted file mode 100644 index 8b81f88..0000000 --- a/example/hello/run/router.json +++ /dev/null @@ -1,14 +0,0 @@ -[ - { - "methods": [ - "HEAD", - "GET" - ], - "paramNames": [], - "path": "/", - "regexp": "/^(?:\\/(?=$))?$/", - "stack": [ - "wrappedController" - ] - } -] \ No newline at end of file From a74a9ed406d3099a40c9adc174dd70b3d422bcde Mon Sep 17 00:00:00 2001 From: fengmk2 Date: Tue, 21 Jan 2025 23:10:40 +0800 Subject: [PATCH 4/4] f --- README.md | 2 +- src/lib/redis.ts | 6 ++++-- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index 21c0d9d..0ff42d4 100644 --- a/README.md +++ b/README.md @@ -23,7 +23,7 @@ Valkey / Redis client (support [redis protocol](https://redis.io/docs/latest/dev ## Install ```bash -npm i egg-redis +npm i @eggjs/redis ``` Valkey / Redis Plugin for egg, support egg application access to Valkey / Redis Service. diff --git a/src/lib/redis.ts b/src/lib/redis.ts index 3af4517..3393364 100644 --- a/src/lib/redis.ts +++ b/src/lib/redis.ts @@ -41,15 +41,17 @@ function createClient(options: RedisClusterOptions | RedisClientOptions, app: Eg `[@eggjs/redis] 'host: ${sentinel.host}', 'port: ${sentinel.port}' are required on config`); }); + const mask = config.password ? '***' : config.password; assert(config.name && config.password !== undefined && config.db !== undefined, - `[@eggjs/redis] 'name of master: ${config.name}', 'password: ${config.password}', 'db: ${config.db}' are required on config`); + `[@eggjs/redis] 'name of master: ${config.name}', 'password: ${mask}', 'db: ${config.db}' are required on config`); app.coreLogger.info('[@eggjs/redis] sentinel connecting start'); client = new RedisClass(config as any); } else { const config = options as RedisClientOptions; + const mask = config.password ? '***' : config.password; assert((config.host && config.port && config.password !== undefined && config.db !== undefined) || config.path, - `[@eggjs/redis] 'host: ${config.host}', 'port: ${config.port}', 'password: ${config.password}', 'db: ${config.db}' or 'path:${config.path}' are required on config`); + `[@eggjs/redis] 'host: ${config.host}', 'port: ${config.port}', 'password: ${mask}', 'db: ${config.db}' or 'path:${config.path}' are required on config`); if (config.host) { app.coreLogger.info('[@eggjs/redis] server connecting redis://:***@%s:%s/%s', config.host, config.port, config.db);