deploy: a561ca413d390d7adcf7fa24e1fd6e82a2ec9cea
This commit is contained in:
parent
34598694c7
commit
de82899984
File diff suppressed because one or more lines are too long
1
assets/app.52883806.js
Normal file
1
assets/app.52883806.js
Normal file
@ -0,0 +1 @@
|
|||||||
|
import{M as s,a4 as p,a5 as i,a6 as u,a7 as c,a8 as l,a9 as d,aa as f,ab as m,ac as h,ad as A,J as g,d as P,u as v,p as y,k as C,ae as w,af as _,ag as b,ah as E}from"./chunks/framework.1625126e.js";import{t as R}from"./chunks/theme.776be62d.js";function r(e){if(e.extends){const a=r(e.extends);return{...a,...e,async enhanceApp(t){a.enhanceApp&&await a.enhanceApp(t),e.enhanceApp&&await e.enhanceApp(t)}}}return e}const n=r(R),D=P({name:"VitePressApp",setup(){const{site:e}=v();return y(()=>{C(()=>{document.documentElement.lang=e.value.lang,document.documentElement.dir=e.value.dir})}),w(),_(),b(),n.setup&&n.setup(),()=>E(n.Layout)}});async function O(){const e=T(),a=S();a.provide(i,e);const t=u(e.route);return a.provide(c,t),a.component("Content",l),a.component("ClientOnly",d),Object.defineProperties(a.config.globalProperties,{$frontmatter:{get(){return t.frontmatter.value}},$params:{get(){return t.page.value.params}}}),n.enhanceApp&&await n.enhanceApp({app:a,router:e,siteData:f}),{app:a,router:e,data:t}}function S(){return m(D)}function T(){let e=s,a;return h(t=>{let o=A(t);return e&&(a=o),(e||a===o)&&(o=o.replace(/\.js$/,".lean.js")),s&&(e=!1),g(()=>import(o),[])},n.NotFound)}s&&O().then(({app:e,router:a,data:t})=>{a.go().then(()=>{p(a.route,t.site),e.mount("#app")})});export{O as createApp};
|
@ -1 +0,0 @@
|
|||||||
import{_ as e,c as t,o as r,a}from"./app.38e99b9a.js";const b='{"title":"\u81EA\u5EFA\u4E00\u4E2ATG\u673A\u5668\u4EBA\u6765\u67E5\u8BE2\u670D\u52A1\u5668\u4FE1\u606F","description":"","frontmatter":{},"headers":[],"relativePath":"case/case1.md","lastUpdated":1682159272000}',o={},n=a('<h1 id="\u81EA\u5EFA\u4E00\u4E2Atg\u673A\u5668\u4EBA\u6765\u67E5\u8BE2\u670D\u52A1\u5668\u4FE1\u606F" tabindex="-1">\u81EA\u5EFA\u4E00\u4E2ATG\u673A\u5668\u4EBA\u6765\u67E5\u8BE2\u670D\u52A1\u5668\u4FE1\u606F <a class="header-anchor" href="#\u81EA\u5EFA\u4E00\u4E2Atg\u673A\u5668\u4EBA\u6765\u67E5\u8BE2\u670D\u52A1\u5668\u4FE1\u606F" aria-hidden="true">#</a></h1><p>\u8D21\u732E\u8005:</p><ul><li><a href="https://github.com/spiritLHLS" target="_blank" rel="noopener noreferrer">spiritLHLS</a></li><li><a href="https://github.com/Erope/" target="_blank" rel="noopener noreferrer">Erope</a></li></ul><p>\u9879\u76EE\u5730\u5740\uFF1A<a href="https://github.com/spiritLHLS/nezha_api_tgbot" target="_blank" rel="noopener noreferrer">nezha_api_tgbot</a></p><p>\u955C\u50CF\u5907\u4EFD\uFF08\u975E\u5B9E\u65F6\u66F4\u65B0\uFF09\uFF1A<a href="https://github.com/nezhahq/nezha_api_tgbot" target="_blank" rel="noopener noreferrer">nezha_api_tgbot</a><br> \u673A\u5668\u4EBA\u53EF\u4EE5\u901A\u8FC7API\u5411\u9762\u677F\u8BF7\u6C42\u670D\u52A1\u5668\u72B6\u6001\u4FE1\u606F\uFF0C\u5F97\u5230\u4FE1\u606F\u540E\u53D1\u9001\u7ED9\u7528\u6237<br> \u4F60\u53EF\u4EE5\u642D\u5EFA\u6B64\u673A\u5668\u4EBA\u6765\u65B9\u4FBF\u5730\u67E5\u770B\u6307\u5B9A\u670D\u52A1\u5668\u7684\u5F53\u524D\u72B6\u6001\u4E14\u4E0D\u9700\u8981\u6253\u5F00\u9762\u677F</p>',5),_=[n];function i(p,s,h,c,l,d){return r(),t("div",null,_)}var g=e(o,[["render",i]]);export{b as __pageData,g as default};
|
|
@ -1 +0,0 @@
|
|||||||
import{_ as e,c as t,o as r,a}from"./app.38e99b9a.js";const b='{"title":"\u81EA\u5EFA\u4E00\u4E2ATG\u673A\u5668\u4EBA\u6765\u67E5\u8BE2\u670D\u52A1\u5668\u4FE1\u606F","description":"","frontmatter":{},"headers":[],"relativePath":"case/case1.md","lastUpdated":1682159272000}',o={},n=a("",5),_=[n];function i(p,s,h,c,l,d){return r(),t("div",null,_)}var g=e(o,[["render",i]]);export{b as __pageData,g as default};
|
|
1
assets/case_case1.md.ecc14085.js
Normal file
1
assets/case_case1.md.ecc14085.js
Normal file
@ -0,0 +1 @@
|
|||||||
|
import{_ as e,o as t,c as a,R as r}from"./chunks/framework.1625126e.js";const b=JSON.parse('{"title":"自建一个TG机器人来查询服务器信息","description":"","frontmatter":{},"headers":[],"relativePath":"case/case1.md","filePath":"case/case1.md","lastUpdated":1687190167000}'),o={name:"case/case1.md"},_=r('<h1 id="自建一个tg机器人来查询服务器信息" tabindex="-1">自建一个TG机器人来查询服务器信息 <a class="header-anchor" href="#自建一个tg机器人来查询服务器信息" aria-label="Permalink to "自建一个TG机器人来查询服务器信息""></a></h1><p>贡献者:</p><ul><li><a href="https://github.com/spiritLHLS" target="_blank" rel="noreferrer">spiritLHLS</a></li><li><a href="https://github.com/Erope/" target="_blank" rel="noreferrer">Erope</a></li></ul><p>项目地址:<a href="https://github.com/spiritLHLS/nezha_api_tgbot" target="_blank" rel="noreferrer">nezha_api_tgbot</a></p><p>镜像备份(非实时更新):<a href="https://github.com/nezhahq/nezha_api_tgbot" target="_blank" rel="noreferrer">nezha_api_tgbot</a><br> 机器人可以通过API向面板请求服务器状态信息,得到信息后发送给用户<br> 你可以搭建此机器人来方便地查看指定服务器的当前状态且不需要打开面板</p>',5),s=[_];function i(n,c,p,h,l,d){return t(),a("div",null,s)}const g=e(o,[["render",i]]);export{b as __pageData,g as default};
|
1
assets/case_case1.md.ecc14085.lean.js
Normal file
1
assets/case_case1.md.ecc14085.lean.js
Normal file
@ -0,0 +1 @@
|
|||||||
|
import{_ as e,o as t,c as a,R as r}from"./chunks/framework.1625126e.js";const b=JSON.parse('{"title":"自建一个TG机器人来查询服务器信息","description":"","frontmatter":{},"headers":[],"relativePath":"case/case1.md","filePath":"case/case1.md","lastUpdated":1687190167000}'),o={name:"case/case1.md"},_=r("",5),s=[_];function i(n,c,p,h,l,d){return t(),a("div",null,s)}const g=e(o,[["render",i]]);export{b as __pageData,g as default};
|
@ -1 +0,0 @@
|
|||||||
import{_ as e}from"./chunks/qrcode.bde14c07.js";import{_ as a,c as r,o as i,a as t}from"./app.38e99b9a.js";const b='{"title":"\u5728iOS/MacOS\u4E2D\u4F7F\u7528Siri\u8FD0\u884C\u5FEB\u6377\u6307\u4EE4\u67E5\u8BE2\u670D\u52A1\u5668\u72B6\u6001","description":"","frontmatter":{},"headers":[{"level":2,"title":"\u83B7\u53D6\u5FEB\u6377\u6307\u4EE4","slug":"\u83B7\u53D6\u5FEB\u6377\u6307\u4EE4"},{"level":2,"title":"\u4F7F\u7528\u8BF4\u660E","slug":"\u4F7F\u7528\u8BF4\u660E"}],"relativePath":"case/case2.md","lastUpdated":1682159272000}',o={},c=t('<h1 id="\u5728ios-macos\u4E2D\u4F7F\u7528siri\u8FD0\u884C\u5FEB\u6377\u6307\u4EE4\u67E5\u8BE2\u670D\u52A1\u5668\u72B6\u6001" tabindex="-1">\u5728iOS/MacOS\u4E2D\u4F7F\u7528Siri\u8FD0\u884C\u5FEB\u6377\u6307\u4EE4\u67E5\u8BE2\u670D\u52A1\u5668\u72B6\u6001 <a class="header-anchor" href="#\u5728ios-macos\u4E2D\u4F7F\u7528siri\u8FD0\u884C\u5FEB\u6377\u6307\u4EE4\u67E5\u8BE2\u670D\u52A1\u5668\u72B6\u6001" aria-hidden="true">#</a></h1><p>\u5F53\u524D\u7248\u672C\uFF1AV1.0<br> \u8D21\u732E\u8005\uFF1A</p><ul><li>\u767D\u6B4C <a href="https://github.com/hhhkkk520" target="_blank" rel="noopener noreferrer">hhhkkk520</a></li></ul><h2 id="\u83B7\u53D6\u5FEB\u6377\u6307\u4EE4" tabindex="-1">\u83B7\u53D6\u5FEB\u6377\u6307\u4EE4 <a class="header-anchor" href="#\u83B7\u53D6\u5FEB\u6377\u6307\u4EE4" aria-hidden="true">#</a></h2><p>\u4F7F\u7528iPhone\u6216iPad\u626B\u63CF\u4EE5\u4E0B\u4E8C\u7EF4\u7801\uFF0C\u83B7\u53D6\u5FEB\u6377\u6307\u4EE4<br><br><img src="'+e+'" alt=""><br><br> MacOS\u7528\u6237\u8BF7\u8BBF\u95EE<a href="https://www.icloud.com/shortcuts/312005bf5ffd4387ac92a84056db9f09" target="_blank" rel="noopener noreferrer">\u8FD9\u91CC</a>\uFF0C\u83B7\u53D6\u5FEB\u6377\u6307\u4EE4</p><h2 id="\u4F7F\u7528\u8BF4\u660E" tabindex="-1">\u4F7F\u7528\u8BF4\u660E <a class="header-anchor" href="#\u4F7F\u7528\u8BF4\u660E" aria-hidden="true">#</a></h2><ul><li>\u83B7\u53D6\u5FEB\u6377\u6307\u4EE4\u540E\uFF0C\u6253\u5F00\u5E76\u7F16\u8F91\u5FEB\u6377\u6307\u4EE4</li><li>\u5206\u522B\u5728\u4E09\u4E2A\u6587\u672C\u6846\u4E2D\u586B\u5165 <code>\u9762\u677FURL</code>\u3001<code>API Token</code>\u3001<code>\u670D\u52A1\u5668ID</code></li><li>\u4FDD\u5B58\u7F16\u8F91\u5E76\u6D4B\u8BD5\u8FD0\u884C\uFF0C\u80FD\u83B7\u53D6\u7ED3\u679C\u5219\u8868\u793A\u8BBE\u7F6E\u6B63\u786E</li><li>\u4FEE\u6539\u5FEB\u6377\u6307\u4EE4\u7684\u540D\u79F0\uFF0C\u5982\u4FEE\u6539\u4E3A\uFF1A\u201C\u4E00\u53F7\u670D\u52A1\u5668\u72B6\u6001\u201D\uFF0C\u4FDD\u5B58\u540E\u4FBF\u53EF\u4F7F\u7528Siri\u6307\u4EE4\uFF1A\u201C\u563FSiri\uFF0C\u4E00\u53F7\u670D\u52A1\u5668\u72B6\u6001\u201D\u6765\u83B7\u53D6\u670D\u52A1\u5668\u72B6\u6001</li></ul><div class="warning custom-block"><p class="custom-block-title">WARNING</p><p>\u6BCF\u4E2A\u5FEB\u6377\u6307\u4EE4\u53EA\u80FD\u76D1\u63A7\u4E00\u53F0\u670D\u52A1\u5668\uFF0C\u5982\u9700\u8981\u76D1\u63A7\u591A\u4E2A\u670D\u52A1\u5668\uFF0C\u8BF7\u591A\u6B21\u590D\u5236\u6B64\u5FEB\u6377\u6307\u4EE4\u5E76\u5206\u522B\u914D\u7F6E\uFF0C\u7136\u540E\u5206\u522B\u4FEE\u6539\u5FEB\u6377\u6307\u4EE4\u540D\u79F0\uFF0C\u5982\uFF1B\u4E00\u53F7\u670D\u52A1\u5668\u72B6\u6001\u3001\u4E8C\u53F7\u670D\u52A1\u5668\u72B6\u6001\u7B49</p></div>',8),s=[c];function l(d,n,h,_,p,f){return i(),r("div",null,s)}var k=a(o,[["render",l]]);export{b as __pageData,k as default};
|
|
@ -1 +0,0 @@
|
|||||||
import{_ as e}from"./chunks/qrcode.bde14c07.js";import{_ as a,c as r,o as i,a as t}from"./app.38e99b9a.js";const b='{"title":"\u5728iOS/MacOS\u4E2D\u4F7F\u7528Siri\u8FD0\u884C\u5FEB\u6377\u6307\u4EE4\u67E5\u8BE2\u670D\u52A1\u5668\u72B6\u6001","description":"","frontmatter":{},"headers":[{"level":2,"title":"\u83B7\u53D6\u5FEB\u6377\u6307\u4EE4","slug":"\u83B7\u53D6\u5FEB\u6377\u6307\u4EE4"},{"level":2,"title":"\u4F7F\u7528\u8BF4\u660E","slug":"\u4F7F\u7528\u8BF4\u660E"}],"relativePath":"case/case2.md","lastUpdated":1682159272000}',o={},c=t("",8),s=[c];function l(d,n,h,_,p,f){return i(),r("div",null,s)}var k=a(o,[["render",l]]);export{b as __pageData,k as default};
|
|
1
assets/case_case2.md.6c7d5ccf.js
Normal file
1
assets/case_case2.md.6c7d5ccf.js
Normal file
@ -0,0 +1 @@
|
|||||||
|
import{_ as a}from"./chunks/qrcode.59c44dde.js";import{_ as e,o as r,c as i,R as t}from"./chunks/framework.1625126e.js";const b=JSON.parse('{"title":"在iOS/MacOS中使用Siri运行快捷指令查询服务器状态","description":"","frontmatter":{},"headers":[],"relativePath":"case/case2.md","filePath":"case/case2.md","lastUpdated":1687190167000}'),o={name:"case/case2.md"},c=t('<h1 id="在ios-macos中使用siri运行快捷指令查询服务器状态" tabindex="-1">在iOS/MacOS中使用Siri运行快捷指令查询服务器状态 <a class="header-anchor" href="#在ios-macos中使用siri运行快捷指令查询服务器状态" aria-label="Permalink to "在iOS/MacOS中使用Siri运行快捷指令查询服务器状态""></a></h1><p>当前版本:V1.0<br> 贡献者:</p><ul><li>白歌 <a href="https://github.com/hhhkkk520" target="_blank" rel="noreferrer">hhhkkk520</a></li></ul><h2 id="获取快捷指令" tabindex="-1">获取快捷指令 <a class="header-anchor" href="#获取快捷指令" aria-label="Permalink to "获取快捷指令""></a></h2><p>使用iPhone或iPad扫描以下二维码,获取快捷指令<br><br><img src="'+a+'" alt="coode"><br><br> MacOS用户请访问<a href="https://www.icloud.com/shortcuts/312005bf5ffd4387ac92a84056db9f09" target="_blank" rel="noreferrer">这里</a>,获取快捷指令</p><h2 id="使用说明" tabindex="-1">使用说明 <a class="header-anchor" href="#使用说明" aria-label="Permalink to "使用说明""></a></h2><ul><li>获取快捷指令后,打开并编辑快捷指令</li><li>分别在三个文本框中填入 <code>面板URL</code>、<code>API Token</code>、<code>服务器ID</code></li><li>保存编辑并测试运行,能获取结果则表示设置正确</li><li>修改快捷指令的名称,如修改为:“一号服务器状态”,保存后便可使用Siri指令:“嘿Siri,一号服务器状态”来获取服务器状态</li></ul><div class="warning custom-block"><p class="custom-block-title">WARNING</p><p>每个快捷指令只能监控一台服务器,如需要监控多个服务器,请多次复制此快捷指令并分别配置,然后分别修改快捷指令名称,如;一号服务器状态、二号服务器状态等</p></div>',8),s=[c];function l(d,n,h,_,p,m){return r(),i("div",null,s)}const S=e(o,[["render",l]]);export{b as __pageData,S as default};
|
1
assets/case_case2.md.6c7d5ccf.lean.js
Normal file
1
assets/case_case2.md.6c7d5ccf.lean.js
Normal file
@ -0,0 +1 @@
|
|||||||
|
import{_ as a}from"./chunks/qrcode.59c44dde.js";import{_ as e,o as r,c as i,R as t}from"./chunks/framework.1625126e.js";const b=JSON.parse('{"title":"在iOS/MacOS中使用Siri运行快捷指令查询服务器状态","description":"","frontmatter":{},"headers":[],"relativePath":"case/case2.md","filePath":"case/case2.md","lastUpdated":1687190167000}'),o={name:"case/case2.md"},c=t("",8),s=[c];function l(d,n,h,_,p,m){return r(),i("div",null,s)}const S=e(o,[["render",l]]);export{b as __pageData,S as default};
|
1
assets/case_case3.md.5e4a3d1d.js
Normal file
1
assets/case_case3.md.5e4a3d1d.js
Normal file
@ -0,0 +1 @@
|
|||||||
|
import{_ as t,o as e,c as a,R as r}from"./chunks/framework.1625126e.js";const f=JSON.parse('{"title":"自建使用 API 来进行查询,且支持多语言的 Telegram 查询机器人","description":"","frontmatter":{},"headers":[],"relativePath":"case/case3.md","filePath":"case/case3.md","lastUpdated":1687190167000}'),d={name:"case/case3.md"},l=r('<h1 id="自建使用-api-来进行查询-且支持多语言的-telegram-查询机器人" tabindex="-1">自建使用 API 来进行查询,且支持多语言的 Telegram 查询机器人 <a class="header-anchor" href="#自建使用-api-来进行查询-且支持多语言的-telegram-查询机器人" aria-label="Permalink to "自建使用 API 来进行查询,且支持多语言的 Telegram 查询机器人""></a></h1><p>贡献者:</p><ul><li><a href="https://github.com/tech-fever" target="_blank" rel="noreferrer">tech-fever</a></li></ul><p>项目地址:<a href="https://github.com/tech-fever/nezha_telegram_bot" target="_blank" rel="noreferrer">nezha_telegram_bot</a></p><p>镜像备份(非实时更新):<a href="https://github.com/nezhahq/nezha_telegram_bot" target="_blank" rel="noreferrer">nezha_telegram_bot</a></p><h2 id="项目特色" tabindex="-1">项目特色 <a class="header-anchor" href="#项目特色" aria-label="Permalink to "项目特色""></a></h2><p>开源Telegram机器人项目,可以基于API实时查询哪吒面板的服务器信息。</p><ul><li>[x] 支持中/英多语言切换</li><li>[x] 支持分组统计(CPU、磁盘、内存、上下行速度、流量统计等)</li><li>[x] 支持实时刷新单个服务器数据</li><li>[x] 支持键盘互动查询</li><li>[x] 支持命令直接查询</li><li>[x] 增加群聊判断,限制群聊可发送命令</li><li>[x] 增加群聊内5秒自动删除信息</li><li>[x] 支持docker部署</li></ul><h2 id="命令列表" tabindex="-1">命令列表 <a class="header-anchor" href="#命令列表" aria-label="Permalink to "命令列表""></a></h2><table><thead><tr><th>命令</th><th>功能</th><th>仅私聊</th></tr></thead><tbody><tr><td>start</td><td>开始使用键盘主菜单</td><td>✔️</td></tr><tr><td>help</td><td>帮助列表</td><td>❌</td></tr><tr><td>add</td><td>添加面板链接和token</td><td>✔️</td></tr><tr><td>url</td><td>添加面板链接</td><td>✔️</td></tr><tr><td>token</td><td>添加面板token</td><td>✔️</td></tr><tr><td>info</td><td>获取保存的面板链接和token</td><td>✔️</td></tr><tr><td>delete</td><td>删除保存的面板链接和token</td><td>✔️</td></tr><tr><td>id</td><td>命令后面添加整数id,来进行单个服务器信息查询(私聊带刷新按钮,群聊不带)</td><td>❌</td></tr><tr><td>all</td><td>查询所有服务器的统计信息</td><td>❌</td></tr><tr><td>search</td><td>在服务器名字中搜索关键字(支持多个,用空格分开)</td><td>❌</td></tr></tbody></table><h2 id="效果展示" tabindex="-1">效果展示 <a class="header-anchor" href="#效果展示" aria-label="Permalink to "效果展示""></a></h2><p><img src="https://user-images.githubusercontent.com/105153585/175813727-bef77a8e-ff46-4fd4-b41b-43902abf6159.png#pic_left" alt="image"><img src="https://user-images.githubusercontent.com/105153585/175813645-4df4f4c7-2591-4133-9645-21c7db2f62ab.png#pic_right" alt="image"></p>',12),i=[l];function o(h,n,c,s,_,m){return e(),a("div",null,i)}const b=t(d,[["render",o]]);export{f as __pageData,b as default};
|
1
assets/case_case3.md.5e4a3d1d.lean.js
Normal file
1
assets/case_case3.md.5e4a3d1d.lean.js
Normal file
@ -0,0 +1 @@
|
|||||||
|
import{_ as t,o as e,c as a,R as r}from"./chunks/framework.1625126e.js";const f=JSON.parse('{"title":"自建使用 API 来进行查询,且支持多语言的 Telegram 查询机器人","description":"","frontmatter":{},"headers":[],"relativePath":"case/case3.md","filePath":"case/case3.md","lastUpdated":1687190167000}'),d={name:"case/case3.md"},l=r("",12),i=[l];function o(h,n,c,s,_,m){return e(),a("div",null,i)}const b=t(d,[["render",o]]);export{f as __pageData,b as default};
|
@ -1 +0,0 @@
|
|||||||
import{_ as t,c as e,o as r,a as d}from"./app.38e99b9a.js";const g='{"title":"\u81EA\u5EFA\u4F7F\u7528 API \u6765\u8FDB\u884C\u67E5\u8BE2,\u4E14\u652F\u6301\u591A\u8BED\u8A00\u7684 Telegram \u67E5\u8BE2\u673A\u5668\u4EBA","description":"","frontmatter":{},"headers":[{"level":2,"title":"\u9879\u76EE\u7279\u8272","slug":"\u9879\u76EE\u7279\u8272"},{"level":2,"title":"\u547D\u4EE4\u5217\u8868","slug":"\u547D\u4EE4\u5217\u8868"},{"level":2,"title":"\u6548\u679C\u5C55\u793A","slug":"\u6548\u679C\u5C55\u793A"}],"relativePath":"case/case3.md","lastUpdated":1682159272000}',a={},l=d('<h1 id="\u81EA\u5EFA\u4F7F\u7528-api-\u6765\u8FDB\u884C\u67E5\u8BE2-\u4E14\u652F\u6301\u591A\u8BED\u8A00\u7684-telegram-\u67E5\u8BE2\u673A\u5668\u4EBA" tabindex="-1">\u81EA\u5EFA\u4F7F\u7528 API \u6765\u8FDB\u884C\u67E5\u8BE2,\u4E14\u652F\u6301\u591A\u8BED\u8A00\u7684 Telegram \u67E5\u8BE2\u673A\u5668\u4EBA <a class="header-anchor" href="#\u81EA\u5EFA\u4F7F\u7528-api-\u6765\u8FDB\u884C\u67E5\u8BE2-\u4E14\u652F\u6301\u591A\u8BED\u8A00\u7684-telegram-\u67E5\u8BE2\u673A\u5668\u4EBA" aria-hidden="true">#</a></h1><p>\u8D21\u732E\u8005:</p><ul><li><a href="https://github.com/tech-fever" target="_blank" rel="noopener noreferrer">tech-fever</a></li></ul><p>\u9879\u76EE\u5730\u5740\uFF1A<a href="https://github.com/tech-fever/nezha_telegram_bot" target="_blank" rel="noopener noreferrer">nezha_telegram_bot</a></p><p>\u955C\u50CF\u5907\u4EFD\uFF08\u975E\u5B9E\u65F6\u66F4\u65B0\uFF09\uFF1A<a href="https://github.com/nezhahq/nezha_telegram_bot" target="_blank" rel="noopener noreferrer">nezha_telegram_bot</a></p><h2 id="\u9879\u76EE\u7279\u8272" tabindex="-1">\u9879\u76EE\u7279\u8272 <a class="header-anchor" href="#\u9879\u76EE\u7279\u8272" aria-hidden="true">#</a></h2><p>\u5F00\u6E90Telegram\u673A\u5668\u4EBA\u9879\u76EE\uFF0C\u53EF\u4EE5\u57FA\u4E8EAPI\u5B9E\u65F6\u67E5\u8BE2\u54EA\u5412\u9762\u677F\u7684\u670D\u52A1\u5668\u4FE1\u606F\u3002</p><ul><li>[x] \u652F\u6301\u4E2D/\u82F1\u591A\u8BED\u8A00\u5207\u6362</li><li>[x] \u652F\u6301\u5206\u7EC4\u7EDF\u8BA1(CPU\u3001\u78C1\u76D8\u3001\u5185\u5B58\u3001\u4E0A\u4E0B\u884C\u901F\u5EA6\u3001\u6D41\u91CF\u7EDF\u8BA1\u7B49)</li><li>[x] \u652F\u6301\u5B9E\u65F6\u5237\u65B0\u5355\u4E2A\u670D\u52A1\u5668\u6570\u636E</li><li>[x] \u652F\u6301\u952E\u76D8\u4E92\u52A8\u67E5\u8BE2</li><li>[x] \u652F\u6301\u547D\u4EE4\u76F4\u63A5\u67E5\u8BE2</li><li>[x] \u589E\u52A0\u7FA4\u804A\u5224\u65AD\uFF0C\u9650\u5236\u7FA4\u804A\u53EF\u53D1\u9001\u547D\u4EE4</li><li>[x] \u589E\u52A0\u7FA4\u804A\u51855\u79D2\u81EA\u52A8\u5220\u9664\u4FE1\u606F</li><li>[x] \u652F\u6301docker\u90E8\u7F72</li></ul><h2 id="\u547D\u4EE4\u5217\u8868" tabindex="-1">\u547D\u4EE4\u5217\u8868 <a class="header-anchor" href="#\u547D\u4EE4\u5217\u8868" aria-hidden="true">#</a></h2><table><thead><tr><th>\u547D\u4EE4</th><th>\u529F\u80FD</th><th>\u4EC5\u79C1\u804A</th></tr></thead><tbody><tr><td>start</td><td>\u5F00\u59CB\u4F7F\u7528\u952E\u76D8\u4E3B\u83DC\u5355</td><td>\u2714\uFE0F</td></tr><tr><td>help</td><td>\u5E2E\u52A9\u5217\u8868</td><td>\u274C</td></tr><tr><td>add</td><td>\u6DFB\u52A0\u9762\u677F\u94FE\u63A5\u548Ctoken</td><td>\u2714\uFE0F</td></tr><tr><td>url</td><td>\u6DFB\u52A0\u9762\u677F\u94FE\u63A5</td><td>\u2714\uFE0F</td></tr><tr><td>token</td><td>\u6DFB\u52A0\u9762\u677Ftoken</td><td>\u2714\uFE0F</td></tr><tr><td>info</td><td>\u83B7\u53D6\u4FDD\u5B58\u7684\u9762\u677F\u94FE\u63A5\u548Ctoken</td><td>\u2714\uFE0F</td></tr><tr><td>delete</td><td>\u5220\u9664\u4FDD\u5B58\u7684\u9762\u677F\u94FE\u63A5\u548Ctoken</td><td>\u2714\uFE0F</td></tr><tr><td>id</td><td>\u547D\u4EE4\u540E\u9762\u6DFB\u52A0\u6574\u6570id\uFF0C\u6765\u8FDB\u884C\u5355\u4E2A\u670D\u52A1\u5668\u4FE1\u606F\u67E5\u8BE2\uFF08\u79C1\u804A\u5E26\u5237\u65B0\u6309\u94AE\uFF0C\u7FA4\u804A\u4E0D\u5E26\uFF09</td><td>\u274C</td></tr><tr><td>all</td><td>\u67E5\u8BE2\u6240\u6709\u670D\u52A1\u5668\u7684\u7EDF\u8BA1\u4FE1\u606F</td><td>\u274C</td></tr><tr><td>search</td><td>\u5728\u670D\u52A1\u5668\u540D\u5B57\u4E2D\u641C\u7D22\u5173\u952E\u5B57\uFF08\u652F\u6301\u591A\u4E2A\uFF0C\u7528\u7A7A\u683C\u5206\u5F00\uFF09</td><td>\u274C</td></tr></tbody></table><h2 id="\u6548\u679C\u5C55\u793A" tabindex="-1">\u6548\u679C\u5C55\u793A <a class="header-anchor" href="#\u6548\u679C\u5C55\u793A" aria-hidden="true">#</a></h2><p><img src="https://user-images.githubusercontent.com/105153585/175813727-bef77a8e-ff46-4fd4-b41b-43902abf6159.png#pic_left" alt=""><img src="https://user-images.githubusercontent.com/105153585/175813645-4df4f4c7-2591-4133-9645-21c7db2f62ab.png#pic_right" alt=""></p>',12),i=[l];function h(n,o,s,c,_,p){return r(),e("div",null,i)}var b=t(a,[["render",h]]);export{g as __pageData,b as default};
|
|
@ -1 +0,0 @@
|
|||||||
import{_ as t,c as e,o as r,a as d}from"./app.38e99b9a.js";const g='{"title":"\u81EA\u5EFA\u4F7F\u7528 API \u6765\u8FDB\u884C\u67E5\u8BE2,\u4E14\u652F\u6301\u591A\u8BED\u8A00\u7684 Telegram \u67E5\u8BE2\u673A\u5668\u4EBA","description":"","frontmatter":{},"headers":[{"level":2,"title":"\u9879\u76EE\u7279\u8272","slug":"\u9879\u76EE\u7279\u8272"},{"level":2,"title":"\u547D\u4EE4\u5217\u8868","slug":"\u547D\u4EE4\u5217\u8868"},{"level":2,"title":"\u6548\u679C\u5C55\u793A","slug":"\u6548\u679C\u5C55\u793A"}],"relativePath":"case/case3.md","lastUpdated":1682159272000}',a={},l=d("",12),i=[l];function h(n,o,s,c,_,p){return r(),e("div",null,i)}var b=t(a,[["render",h]]);export{g as __pageData,b as default};
|
|
1
assets/case_case4.md.9da898b3.js
Normal file
1
assets/case_case4.md.9da898b3.js
Normal file
@ -0,0 +1 @@
|
|||||||
|
import{_ as s,o as t,c as e,R as a}from"./chunks/framework.1625126e.js";const r="/assets/2.38c2ea56.png",n="/assets/5.23139306.png",o="/assets/6.22a61698.png",p="/assets/4.fe6a4e7a.jpg",c="/assets/1.b4b4591f.jpeg",y=JSON.parse('{"title":"重磅推荐!一秒拥有宇宙级算力!让你在人前,不!再!自!卑","description":"","frontmatter":{},"headers":[],"relativePath":"case/case4.md","filePath":"case/case4.md","lastUpdated":1687190167000}'),_={name:"case/case4.md"},i=a('<h1 id="重磅推荐-一秒拥有宇宙级算力-让你在人前-不-再-自-卑" tabindex="-1">重磅推荐!一秒拥有宇宙级算力!让你在人前,不!再!自!卑 <a class="header-anchor" href="#重磅推荐-一秒拥有宇宙级算力-让你在人前-不-再-自-卑" aria-label="Permalink to "重磅推荐!一秒拥有宇宙级算力!让你在人前,不!再!自!卑""></a></h1><br><hr><p><img src="'+r+'" alt="2"><br><br><span style="font-size:5;">还在因为自己的小鸡配置太差被朋友嘲笑吗? </span><br><span style="font-size:5;">还在想参加以针会友活动却因为小鸡不够排面而觉得羞耻吗? </span><br><span style="font-size:5;">还在因为在哪吒TG群里机器人排名太低而觉得自己低人一等吗? </span><br><br><br><span style="font-size:6;"><strong>今天开始!找回自信!</strong></span><br></p><p>来自南京的名老中医 <a href="https://github.com/dysf888" target="_blank" rel="noreferrer">dysf888</a> 独家秘方!让你<strong>找回男人本色,激情畅享!</strong><br> 安装 <a href="https://github.com/dysf888/fake-nezha-agent" target="_blank" rel="noreferrer">Fake Agent</a>,可随意修改服务器监测数据的倍数上传到 Dashboard,让你的小鸡 <strong>脱!胎!换!骨!</strong> 让你在 MJJ 面前<span style="font-size:5;">硬</span>起来!</p><p>镜像备份(非实时更新):<a href="https://github.com/nezhahq/fake-nezha-agent" target="_blank" rel="noreferrer">Fake Agent</a><br><br></p><p><span style="font-size:4;"><strong>哪吒监控创始人奶爸也在用:</strong></span><br><img src="'+n+'" alt="5"></p><br><p><span style="font-size:4;"><strong>男人用了都说好:</strong></span><br><img src="'+o+'" alt="6"><br><img src="'+p+'" alt="4"></p><br><hr><p><img src="'+c+'" alt="1"></p>',12),l=[i];function g(f,b,h,m,d,k){return t(),e("div",null,l)}const z=s(_,[["render",g]]);export{y as __pageData,z as default};
|
1
assets/case_case4.md.9da898b3.lean.js
Normal file
1
assets/case_case4.md.9da898b3.lean.js
Normal file
@ -0,0 +1 @@
|
|||||||
|
import{_ as s,o as t,c as e,R as a}from"./chunks/framework.1625126e.js";const r="/assets/2.38c2ea56.png",n="/assets/5.23139306.png",o="/assets/6.22a61698.png",p="/assets/4.fe6a4e7a.jpg",c="/assets/1.b4b4591f.jpeg",y=JSON.parse('{"title":"重磅推荐!一秒拥有宇宙级算力!让你在人前,不!再!自!卑","description":"","frontmatter":{},"headers":[],"relativePath":"case/case4.md","filePath":"case/case4.md","lastUpdated":1687190167000}'),_={name:"case/case4.md"},i=a("",12),l=[i];function g(f,b,h,m,d,k){return t(),e("div",null,l)}const z=s(_,[["render",g]]);export{y as __pageData,z as default};
|
@ -1 +0,0 @@
|
|||||||
import{_ as e,c as s,o as r,a as t}from"./app.38e99b9a.js";var a="/assets/2.38c2ea56.png",n="/assets/5.23139306.png",o="/assets/6.22a61698.png",p="/assets/4.fe6a4e7a.jpg",_="/assets/1.b4b4591f.jpeg";const k='{"title":"\u91CD\u78C5\u63A8\u8350\uFF01\u4E00\u79D2\u62E5\u6709\u5B87\u5B99\u7EA7\u7B97\u529B\uFF01\u8BA9\u4F60\u5728\u4EBA\u524D\uFF0C\u4E0D\uFF01\u518D\uFF01\u81EA\uFF01\u5351","description":"","frontmatter":{},"headers":[],"relativePath":"case/case4.md","lastUpdated":1682159272000}',i={},c=t('<h1 id="\u91CD\u78C5\u63A8\u8350\uFF01\u4E00\u79D2\u62E5\u6709\u5B87\u5B99\u7EA7\u7B97\u529B\uFF01\u8BA9\u4F60\u5728\u4EBA\u524D\uFF0C\u4E0D\uFF01\u518D\uFF01\u81EA\uFF01\u5351" tabindex="-1">\u91CD\u78C5\u63A8\u8350\uFF01\u4E00\u79D2\u62E5\u6709\u5B87\u5B99\u7EA7\u7B97\u529B\uFF01\u8BA9\u4F60\u5728\u4EBA\u524D\uFF0C\u4E0D\uFF01\u518D\uFF01\u81EA\uFF01\u5351 <a class="header-anchor" href="#\u91CD\u78C5\u63A8\u8350\uFF01\u4E00\u79D2\u62E5\u6709\u5B87\u5B99\u7EA7\u7B97\u529B\uFF01\u8BA9\u4F60\u5728\u4EBA\u524D\uFF0C\u4E0D\uFF01\u518D\uFF01\u81EA\uFF01\u5351" aria-hidden="true">#</a></h1><br><hr><p><img src="'+a+'" alt=""><br><br><span style="font-size:5;">\u8FD8\u5728\u56E0\u4E3A\u81EA\u5DF1\u7684\u5C0F\u9E21\u914D\u7F6E\u592A\u5DEE\u88AB\u670B\u53CB\u5632\u7B11\u5417\uFF1F </span><br><span style="font-size:5;">\u8FD8\u5728\u60F3\u53C2\u52A0\u4EE5\u9488\u4F1A\u53CB\u6D3B\u52A8\u5374\u56E0\u4E3A\u5C0F\u9E21\u4E0D\u591F\u6392\u9762\u800C\u89C9\u5F97\u7F9E\u803B\u5417\uFF1F </span><br><span style="font-size:5;">\u8FD8\u5728\u56E0\u4E3A\u5728\u54EA\u5412TG\u7FA4\u91CC\u673A\u5668\u4EBA\u6392\u540D\u592A\u4F4E\u800C\u89C9\u5F97\u81EA\u5DF1\u4F4E\u4EBA\u4E00\u7B49\u5417\uFF1F </span><br><br><br><span style="font-size:6;"><strong>\u4ECA\u5929\u5F00\u59CB\uFF01\u627E\u56DE\u81EA\u4FE1\uFF01</strong></span><br></p><p>\u6765\u81EA\u5357\u4EAC\u7684\u540D\u8001\u4E2D\u533B <a href="https://github.com/dysf888" target="_blank" rel="noopener noreferrer">dysf888</a> \u72EC\u5BB6\u79D8\u65B9\uFF01\u8BA9\u4F60<strong>\u627E\u56DE\u7537\u4EBA\u672C\u8272\uFF0C\u6FC0\u60C5\u7545\u4EAB\uFF01</strong><br> \u5B89\u88C5 <a href="https://github.com/dysf888/fake-nezha-agent" target="_blank" rel="noopener noreferrer">Fake Agent</a>\uFF0C\u53EF\u968F\u610F\u4FEE\u6539\u670D\u52A1\u5668\u76D1\u6D4B\u6570\u636E\u7684\u500D\u6570\u4E0A\u4F20\u5230 Dashboard\uFF0C\u8BA9\u4F60\u7684\u5C0F\u9E21 <strong>\u8131\uFF01\u80CE\uFF01\u6362\uFF01\u9AA8\uFF01</strong> \u8BA9\u4F60\u5728 MJJ \u9762\u524D<span style="font-size:5;">\u786C</span>\u8D77\u6765\uFF01</p><p>\u955C\u50CF\u5907\u4EFD\uFF08\u975E\u5B9E\u65F6\u66F4\u65B0\uFF09\uFF1A<a href="https://github.com/nezhahq/fake-nezha-agent" target="_blank" rel="noopener noreferrer">Fake Agent</a><br><br></p><p><span style="font-size:4;"><strong>\u54EA\u5412\u76D1\u63A7\u521B\u59CB\u4EBA\u5976\u7238\u4E5F\u5728\u7528\uFF1A</strong></span><br><img src="'+n+'" alt=""></p><br><p><span style="font-size:4;"><strong>\u7537\u4EBA\u7528\u4E86\u90FD\u8BF4\u597D\uFF1A</strong></span><br><img src="'+o+'" alt=""><br><img src="'+p+'" alt=""></p><br><hr><p><img src="'+_+'" alt=""></p>',12),g=[c];function f(l,b,h,d,m,y){return r(),s("div",null,g)}var u=e(i,[["render",f]]);export{k as __pageData,u as default};
|
|
@ -1 +0,0 @@
|
|||||||
import{_ as e,c as s,o as r,a as t}from"./app.38e99b9a.js";var a="/assets/2.38c2ea56.png",n="/assets/5.23139306.png",o="/assets/6.22a61698.png",p="/assets/4.fe6a4e7a.jpg",_="/assets/1.b4b4591f.jpeg";const k='{"title":"\u91CD\u78C5\u63A8\u8350\uFF01\u4E00\u79D2\u62E5\u6709\u5B87\u5B99\u7EA7\u7B97\u529B\uFF01\u8BA9\u4F60\u5728\u4EBA\u524D\uFF0C\u4E0D\uFF01\u518D\uFF01\u81EA\uFF01\u5351","description":"","frontmatter":{},"headers":[],"relativePath":"case/case4.md","lastUpdated":1682159272000}',i={},c=t("",12),g=[c];function f(l,b,h,d,m,y){return r(),s("div",null,g)}var u=e(i,[["render",f]]);export{k as __pageData,u as default};
|
|
File diff suppressed because one or more lines are too long
@ -1 +0,0 @@
|
|||||||
import{_ as e,c as t,o as a,a as r}from"./app.38e99b9a.js";const m='{"title":"Nezha server over Argo tunnel","description":"","frontmatter":{},"headers":[{"level":2,"title":"\u9879\u76EE\u7279\u70B9:","slug":"\u9879\u76EE\u7279\u70B9"},{"level":2,"title":"\u51C6\u5907\u9700\u8981\u7528\u7684\u53D8\u91CF","slug":"\u51C6\u5907\u9700\u8981\u7528\u7684\u53D8\u91CF"},{"level":2,"title":"PaaS \u90E8\u7F72\u5B9E\u4F8B","slug":"paas-\u90E8\u7F72\u5B9E\u4F8B"},{"level":2,"title":"VPS \u90E8\u7F72\u5B9E\u4F8B","slug":"vps-\u90E8\u7F72\u5B9E\u4F8B"},{"level":3,"title":"docker \u90E8\u7F72","slug":"docker-\u90E8\u7F72"},{"level":3,"title":"docker-compose \u90E8\u7F72","slug":"docker-compose-\u90E8\u7F72"},{"level":2,"title":"\u5BA2\u6237\u7AEF\u63A5\u5165","slug":"\u5BA2\u6237\u7AEF\u63A5\u5165"},{"level":2,"title":"SSH \u63A5\u5165","slug":"ssh-\u63A5\u5165"},{"level":2,"title":"","slug":""},{"level":2,"title":"\u9E23\u8C22\u4E0B\u5217\u4F5C\u8005\u7684\u6587\u7AE0\u548C\u9879\u76EE:","slug":"\u9E23\u8C22\u4E0B\u5217\u4F5C\u8005\u7684\u6587\u7AE0\u548C\u9879\u76EE"},{"level":2,"title":"\u514D\u8D23\u58F0\u660E:","slug":"\u514D\u8D23\u58F0\u660E"}],"relativePath":"case/case5.md","lastUpdated":1682159272000}',n={},l=r("",59),s=[l];function i(o,h,c,d,g,u){return a(),t("div",null,s)}var b=e(n,[["render",i]]);export{m as __pageData,b as default};
|
|
35
assets/case_case5.md.8d0f657b.js
Normal file
35
assets/case_case5.md.8d0f657b.js
Normal file
File diff suppressed because one or more lines are too long
1
assets/case_case5.md.8d0f657b.lean.js
Normal file
1
assets/case_case5.md.8d0f657b.lean.js
Normal file
@ -0,0 +1 @@
|
|||||||
|
import{_ as a,o as e,c as t,R as s}from"./chunks/framework.1625126e.js";const m=JSON.parse('{"title":"Nezha server over Argo tunnel","description":"","frontmatter":{},"headers":[],"relativePath":"case/case5.md","filePath":"case/case5.md","lastUpdated":1687190167000}'),n={name:"case/case5.md"},l=s("",59),r=[l];function o(c,i,p,h,d,g){return e(),t("div",null,r)}const b=a(n,[["render",o]]);export{m as __pageData,b as default};
|
1
assets/case_index.md.490516a2.js
Normal file
1
assets/case_index.md.490516a2.js
Normal file
@ -0,0 +1 @@
|
|||||||
|
import{_ as a,o as s,c as n,z as e,a as t}from"./chunks/framework.1625126e.js";const u=JSON.parse('{"title":"","description":"","frontmatter":{"heroImage":"https://raw.githubusercontent.com/naiba/nezha/master/resource/static/brand.svg","heroText":"哪吒监控社区项目","tagline":"哪吒监控社区贡献的相关项目,为哪吒监控提供了更多扩展","actionText":"查看项目 →","actionLink":"/case/case1","features":[{"title":"提交项目","details":"我们欢迎您提交自己的项目,请加入TG群联系管理员了解相关事宜"},{"title":"注意事项","details":"所有项目均由社区成员贡献,请您知悉哪吒监控团队无法为社区项目承担包括且不限于:保修、可用性、安全性等责任"}]},"headers":[],"relativePath":"case/index.md","filePath":"case/index.md","lastUpdated":1687190167000}'),c={name:"case/index.md"},r=e("p",null,[e("br"),t("本作品采用 "),e("a",{rel:"license",href:"http://creativecommons.org/licenses/by-nc-sa/4.0/"},"知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议"),t(" 进行许可。")],-1),o=[r];function i(d,l,p,_,m,h){return s(),n("div",null,o)}const x=a(c,[["render",i]]);export{u as __pageData,x as default};
|
1
assets/case_index.md.490516a2.lean.js
Normal file
1
assets/case_index.md.490516a2.lean.js
Normal file
@ -0,0 +1 @@
|
|||||||
|
import{_ as a,o as s,c as n,z as e,a as t}from"./chunks/framework.1625126e.js";const u=JSON.parse('{"title":"","description":"","frontmatter":{"heroImage":"https://raw.githubusercontent.com/naiba/nezha/master/resource/static/brand.svg","heroText":"哪吒监控社区项目","tagline":"哪吒监控社区贡献的相关项目,为哪吒监控提供了更多扩展","actionText":"查看项目 →","actionLink":"/case/case1","features":[{"title":"提交项目","details":"我们欢迎您提交自己的项目,请加入TG群联系管理员了解相关事宜"},{"title":"注意事项","details":"所有项目均由社区成员贡献,请您知悉哪吒监控团队无法为社区项目承担包括且不限于:保修、可用性、安全性等责任"}]},"headers":[],"relativePath":"case/index.md","filePath":"case/index.md","lastUpdated":1687190167000}'),c={name:"case/index.md"},r=e("p",null,[e("br"),t("本作品采用 "),e("a",{rel:"license",href:"http://creativecommons.org/licenses/by-nc-sa/4.0/"},"知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议"),t(" 进行许可。")],-1),o=[r];function i(d,l,p,_,m,h){return s(),n("div",null,o)}const x=a(c,[["render",i]]);export{u as __pageData,x as default};
|
@ -1 +0,0 @@
|
|||||||
import{_ as a,c as s,o as r,b as e,d as t}from"./app.38e99b9a.js";const f='{"title":"Home","description":"","frontmatter":{"home":true,"heroImage":"https://raw.githubusercontent.com/naiba/nezha/master/resource/static/brand.svg","heroText":"\u54EA\u5412\u76D1\u63A7\u793E\u533A\u9879\u76EE","tagline":"\u54EA\u5412\u76D1\u63A7\u793E\u533A\u8D21\u732E\u7684\u76F8\u5173\u9879\u76EE\uFF0C\u4E3A\u54EA\u5412\u76D1\u63A7\u63D0\u4F9B\u4E86\u66F4\u591A\u6269\u5C55","actionText":"\u67E5\u770B\u9879\u76EE \u2192","actionLink":"/case/case1","features":[{"title":"\u63D0\u4EA4\u9879\u76EE","details":"\u6211\u4EEC\u6B22\u8FCE\u60A8\u63D0\u4EA4\u81EA\u5DF1\u7684\u9879\u76EE\uFF0C\u8BF7\u52A0\u5165TG\u7FA4\u8054\u7CFB\u7BA1\u7406\u5458\u4E86\u89E3\u76F8\u5173\u4E8B\u5B9C"},{"title":"\u6CE8\u610F\u4E8B\u9879","details":"\u6240\u6709\u9879\u76EE\u5747\u7531\u793E\u533A\u6210\u5458\u8D21\u732E\uFF0C\u8BF7\u60A8\u77E5\u6089\u54EA\u5412\u76D1\u63A7\u56E2\u961F\u65E0\u6CD5\u4E3A\u793E\u533A\u9879\u76EE\u627F\u62C5\u5305\u62EC\u4E14\u4E0D\u9650\u4E8E\uFF1A\u4FDD\u4FEE\u3001\u53EF\u7528\u6027\u3001\u5B89\u5168\u6027\u7B49\u8D23\u4EFB"}]},"headers":[],"relativePath":"case/index.md","lastUpdated":1682159272000}',o={},c=e("p",null,[e("br"),t("\u672C\u4F5C\u54C1\u91C7\u7528 "),e("a",{rel:"license",href:"http://creativecommons.org/licenses/by-nc-sa/4.0/"},"\u77E5\u8BC6\u5171\u4EAB\u7F72\u540D-\u975E\u5546\u4E1A\u6027\u4F7F\u7528-\u76F8\u540C\u65B9\u5F0F\u5171\u4EAB 4.0 \u56FD\u9645\u8BB8\u53EF\u534F\u8BAE"),t(" \u8FDB\u884C\u8BB8\u53EF\u3002")],-1),n=[c];function i(d,l,_,p,h,m){return r(),s("div",null,n)}var x=a(o,[["render",i]]);export{f as __pageData,x as default};
|
|
@ -1 +0,0 @@
|
|||||||
import{_ as a,c as s,o as r,b as e,d as t}from"./app.38e99b9a.js";const f='{"title":"Home","description":"","frontmatter":{"home":true,"heroImage":"https://raw.githubusercontent.com/naiba/nezha/master/resource/static/brand.svg","heroText":"\u54EA\u5412\u76D1\u63A7\u793E\u533A\u9879\u76EE","tagline":"\u54EA\u5412\u76D1\u63A7\u793E\u533A\u8D21\u732E\u7684\u76F8\u5173\u9879\u76EE\uFF0C\u4E3A\u54EA\u5412\u76D1\u63A7\u63D0\u4F9B\u4E86\u66F4\u591A\u6269\u5C55","actionText":"\u67E5\u770B\u9879\u76EE \u2192","actionLink":"/case/case1","features":[{"title":"\u63D0\u4EA4\u9879\u76EE","details":"\u6211\u4EEC\u6B22\u8FCE\u60A8\u63D0\u4EA4\u81EA\u5DF1\u7684\u9879\u76EE\uFF0C\u8BF7\u52A0\u5165TG\u7FA4\u8054\u7CFB\u7BA1\u7406\u5458\u4E86\u89E3\u76F8\u5173\u4E8B\u5B9C"},{"title":"\u6CE8\u610F\u4E8B\u9879","details":"\u6240\u6709\u9879\u76EE\u5747\u7531\u793E\u533A\u6210\u5458\u8D21\u732E\uFF0C\u8BF7\u60A8\u77E5\u6089\u54EA\u5412\u76D1\u63A7\u56E2\u961F\u65E0\u6CD5\u4E3A\u793E\u533A\u9879\u76EE\u627F\u62C5\u5305\u62EC\u4E14\u4E0D\u9650\u4E8E\uFF1A\u4FDD\u4FEE\u3001\u53EF\u7528\u6027\u3001\u5B89\u5168\u6027\u7B49\u8D23\u4EFB"}]},"headers":[],"relativePath":"case/index.md","lastUpdated":1682159272000}',o={},c=e("p",null,[e("br"),t("\u672C\u4F5C\u54C1\u91C7\u7528 "),e("a",{rel:"license",href:"http://creativecommons.org/licenses/by-nc-sa/4.0/"},"\u77E5\u8BC6\u5171\u4EAB\u7F72\u540D-\u975E\u5546\u4E1A\u6027\u4F7F\u7528-\u76F8\u540C\u65B9\u5F0F\u5171\u4EAB 4.0 \u56FD\u9645\u8BB8\u53EF\u534F\u8BAE"),t(" \u8FDB\u884C\u8BB8\u53EF\u3002")],-1),n=[c];function i(d,l,_,p,h,m){return r(),s("div",null,n)}var x=a(o,[["render",i]]);export{f as __pageData,x as default};
|
|
File diff suppressed because one or more lines are too long
17
assets/chunks/VPAlgoliaSearchBox.d6de91b0.js
Normal file
17
assets/chunks/VPAlgoliaSearchBox.d6de91b0.js
Normal file
File diff suppressed because one or more lines are too long
2
assets/chunks/framework.1625126e.js
Normal file
2
assets/chunks/framework.1625126e.js
Normal file
File diff suppressed because one or more lines are too long
1
assets/chunks/qrcode.59c44dde.js
Normal file
1
assets/chunks/qrcode.59c44dde.js
Normal file
@ -0,0 +1 @@
|
|||||||
|
const s="/assets/qrcode.0a61500e.png";export{s as _};
|
@ -1 +0,0 @@
|
|||||||
var s="/assets/qrcode.0a61500e.png";export{s as _};
|
|
7
assets/chunks/theme.776be62d.js
Normal file
7
assets/chunks/theme.776be62d.js
Normal file
File diff suppressed because one or more lines are too long
@ -1 +0,0 @@
|
|||||||
import{_ as a,c as o,o as r,b as e,d as t}from"./app.38e99b9a.js";const f='{"title":"Home","description":"","frontmatter":{"home":true,"heroImage":"https://raw.githubusercontent.com/naiba/nezha/master/resource/static/brand.svg","heroText":"\u5F00\u53D1\u624B\u518C","tagline":"\u6B22\u8FCE\u4F7F\u7528\u54EA\u5412\u76D1\u63A7\u5F00\u53D1\u624B\u518C\uFF0C\u6211\u4EEC\u6B22\u8FCE\u4F60\u63D0\u51FA\u9AD8\u8D28\u91CF\u7684Pull Request\uFF0C\u5E2E\u52A9\u54EA\u5412\u76D1\u63A7\u53D8\u5F97\u66F4\u597D\uFF01","actionText":"\u5F00\u59CB\u4F7F\u7528 \u2192","actionLink":"/developer/theme","footer":"Copyright \xA9 2022-present Nezhahq"},"headers":[],"relativePath":"developer/index.md","lastUpdated":1682159272000}',s={},n=e("p",null,[e("br"),t("\u672C\u4F5C\u54C1\u91C7\u7528 "),e("a",{rel:"license",href:"http://creativecommons.org/licenses/by-nc-sa/4.0/"},"\u77E5\u8BC6\u5171\u4EAB\u7F72\u540D-\u975E\u5546\u4E1A\u6027\u4F7F\u7528-\u76F8\u540C\u65B9\u5F0F\u5171\u4EAB 4.0 \u56FD\u9645\u8BB8\u53EF\u534F\u8BAE"),t(" \u8FDB\u884C\u8BB8\u53EF\u3002")],-1),c=[n];function i(d,l,p,h,_,m){return r(),o("div",null,c)}var x=a(s,[["render",i]]);export{f as __pageData,x as default};
|
|
@ -1 +0,0 @@
|
|||||||
import{_ as a,c as o,o as r,b as e,d as t}from"./app.38e99b9a.js";const f='{"title":"Home","description":"","frontmatter":{"home":true,"heroImage":"https://raw.githubusercontent.com/naiba/nezha/master/resource/static/brand.svg","heroText":"\u5F00\u53D1\u624B\u518C","tagline":"\u6B22\u8FCE\u4F7F\u7528\u54EA\u5412\u76D1\u63A7\u5F00\u53D1\u624B\u518C\uFF0C\u6211\u4EEC\u6B22\u8FCE\u4F60\u63D0\u51FA\u9AD8\u8D28\u91CF\u7684Pull Request\uFF0C\u5E2E\u52A9\u54EA\u5412\u76D1\u63A7\u53D8\u5F97\u66F4\u597D\uFF01","actionText":"\u5F00\u59CB\u4F7F\u7528 \u2192","actionLink":"/developer/theme","footer":"Copyright \xA9 2022-present Nezhahq"},"headers":[],"relativePath":"developer/index.md","lastUpdated":1682159272000}',s={},n=e("p",null,[e("br"),t("\u672C\u4F5C\u54C1\u91C7\u7528 "),e("a",{rel:"license",href:"http://creativecommons.org/licenses/by-nc-sa/4.0/"},"\u77E5\u8BC6\u5171\u4EAB\u7F72\u540D-\u975E\u5546\u4E1A\u6027\u4F7F\u7528-\u76F8\u540C\u65B9\u5F0F\u5171\u4EAB 4.0 \u56FD\u9645\u8BB8\u53EF\u534F\u8BAE"),t(" \u8FDB\u884C\u8BB8\u53EF\u3002")],-1),c=[n];function i(d,l,p,h,_,m){return r(),o("div",null,c)}var x=a(s,[["render",i]]);export{f as __pageData,x as default};
|
|
1
assets/developer_index.md.50de2d0d.js
Normal file
1
assets/developer_index.md.50de2d0d.js
Normal file
@ -0,0 +1 @@
|
|||||||
|
import{_ as a,o,c as r,z as e,a as t}from"./chunks/framework.1625126e.js";const x=JSON.parse('{"title":"","description":"","frontmatter":{"heroImage":"https://raw.githubusercontent.com/naiba/nezha/master/resource/static/brand.svg","heroText":"开发手册","tagline":"欢迎使用哪吒监控开发手册,我们欢迎你提出高质量的Pull Request,帮助哪吒监控变得更好!","actionText":"开始使用 →","actionLink":"/developer/theme"},"headers":[],"relativePath":"developer/index.md","filePath":"developer/index.md","lastUpdated":1687190167000}'),n={name:"developer/index.md"},s=e("p",null,[e("br"),t("本作品采用 "),e("a",{rel:"license",href:"http://creativecommons.org/licenses/by-nc-sa/4.0/"},"知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议"),t(" 进行许可。")],-1),c=[s];function i(d,l,p,m,_,h){return o(),r("div",null,c)}const f=a(n,[["render",i]]);export{x as __pageData,f as default};
|
1
assets/developer_index.md.50de2d0d.lean.js
Normal file
1
assets/developer_index.md.50de2d0d.lean.js
Normal file
@ -0,0 +1 @@
|
|||||||
|
import{_ as a,o,c as r,z as e,a as t}from"./chunks/framework.1625126e.js";const x=JSON.parse('{"title":"","description":"","frontmatter":{"heroImage":"https://raw.githubusercontent.com/naiba/nezha/master/resource/static/brand.svg","heroText":"开发手册","tagline":"欢迎使用哪吒监控开发手册,我们欢迎你提出高质量的Pull Request,帮助哪吒监控变得更好!","actionText":"开始使用 →","actionLink":"/developer/theme"},"headers":[],"relativePath":"developer/index.md","filePath":"developer/index.md","lastUpdated":1687190167000}'),n={name:"developer/index.md"},s=e("p",null,[e("br"),t("本作品采用 "),e("a",{rel:"license",href:"http://creativecommons.org/licenses/by-nc-sa/4.0/"},"知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议"),t(" 进行许可。")],-1),c=[s];function i(d,l,p,m,_,h){return o(),r("div",null,c)}const f=a(n,[["render",i]]);export{x as __pageData,f as default};
|
1
assets/developer_l10n.md.97d82e33.js
Normal file
1
assets/developer_l10n.md.97d82e33.js
Normal file
@ -0,0 +1 @@
|
|||||||
|
import{_ as e,o,c as a,R as t}from"./chunks/framework.1625126e.js";const u=JSON.parse('{"title":"","description":"","frontmatter":{},"headers":[],"relativePath":"developer/l10n.md","filePath":"developer/l10n.md","lastUpdated":1687190167000}'),l={name:"developer/l10n.md"},r=t('<p><strong>哪吒监控的 Dashboard 已经添加本地化,支持多个语言,你可以在开发新功能时遵循以下步骤来支持本地化</strong></p><h2 id="介绍" tabindex="-1">介绍 <a class="header-anchor" href="#介绍" aria-label="Permalink to "介绍""></a></h2><ol><li>你可以直接使用 <code>/resource/l10n/zh-CN.toml</code> 中已有的文本配置来替换新功能中的文本</li><li>如果新功能中有新增文本,请参考 <code>zh-CN.toml</code> 的配置文本,将新文本拉取到 <code>zh-CN.toml</code> 等其他语言的配置文件中,并添加翻译</li></ol><h2 id="新本地化文本的添加" tabindex="-1">新本地化文本的添加 <a class="header-anchor" href="#新本地化文本的添加" aria-label="Permalink to "新本地化文本的添加""></a></h2><ol><li>在 <code>/resource/l10n/</code> 中添加新的语言文本配置</li><li>在新的语言文本配置中拉取其他语言已有的文本配置</li><li>为新的语言文本配置添加翻译</li></ol>',5),c=[r];function d(n,i,s,_,h,p){return o(),a("div",null,c)}const f=e(l,[["render",d]]);export{u as __pageData,f as default};
|
1
assets/developer_l10n.md.97d82e33.lean.js
Normal file
1
assets/developer_l10n.md.97d82e33.lean.js
Normal file
@ -0,0 +1 @@
|
|||||||
|
import{_ as e,o,c as a,R as t}from"./chunks/framework.1625126e.js";const u=JSON.parse('{"title":"","description":"","frontmatter":{},"headers":[],"relativePath":"developer/l10n.md","filePath":"developer/l10n.md","lastUpdated":1687190167000}'),l={name:"developer/l10n.md"},r=t("",5),c=[r];function d(n,i,s,_,h,p){return o(),a("div",null,c)}const f=e(l,[["render",d]]);export{u as __pageData,f as default};
|
@ -1 +0,0 @@
|
|||||||
import{_ as e,c as t,o,a}from"./app.38e99b9a.js";const f='{"title":"\u4ECB\u7ECD","description":"","frontmatter":{},"headers":[{"level":2,"title":"\u4ECB\u7ECD","slug":"\u4ECB\u7ECD"},{"level":2,"title":"\u65B0\u672C\u5730\u5316\u6587\u672C\u7684\u6DFB\u52A0","slug":"\u65B0\u672C\u5730\u5316\u6587\u672C\u7684\u6DFB\u52A0"}],"relativePath":"developer/l10n.md","lastUpdated":1682159272000}',l={},r=a('<p><strong>\u54EA\u5412\u76D1\u63A7\u7684 Dashboard \u5DF2\u7ECF\u6DFB\u52A0\u672C\u5730\u5316\uFF0C\u652F\u6301\u591A\u4E2A\u8BED\u8A00\uFF0C\u4F60\u53EF\u4EE5\u5728\u5F00\u53D1\u65B0\u529F\u80FD\u65F6\u9075\u5FAA\u4EE5\u4E0B\u6B65\u9AA4\u6765\u652F\u6301\u672C\u5730\u5316</strong></p><h2 id="\u4ECB\u7ECD" tabindex="-1">\u4ECB\u7ECD <a class="header-anchor" href="#\u4ECB\u7ECD" aria-hidden="true">#</a></h2><ol><li>\u4F60\u53EF\u4EE5\u76F4\u63A5\u4F7F\u7528 <code>/resource/l10n/zh-CN.toml</code> \u4E2D\u5DF2\u6709\u7684\u6587\u672C\u914D\u7F6E\u6765\u66FF\u6362\u65B0\u529F\u80FD\u4E2D\u7684\u6587\u672C</li><li>\u5982\u679C\u65B0\u529F\u80FD\u4E2D\u6709\u65B0\u589E\u6587\u672C\uFF0C\u8BF7\u53C2\u8003 <code>zh-CN.toml</code> \u7684\u914D\u7F6E\u6587\u672C\uFF0C\u5C06\u65B0\u6587\u672C\u62C9\u53D6\u5230 <code>zh-CN.toml</code> \u7B49\u5176\u4ED6\u8BED\u8A00\u7684\u914D\u7F6E\u6587\u4EF6\u4E2D\uFF0C\u5E76\u6DFB\u52A0\u7FFB\u8BD1</li></ol><h2 id="\u65B0\u672C\u5730\u5316\u6587\u672C\u7684\u6DFB\u52A0" tabindex="-1">\u65B0\u672C\u5730\u5316\u6587\u672C\u7684\u6DFB\u52A0 <a class="header-anchor" href="#\u65B0\u672C\u5730\u5316\u6587\u672C\u7684\u6DFB\u52A0" aria-hidden="true">#</a></h2><ol><li>\u5728 <code>/resource/l10n/</code> \u4E2D\u6DFB\u52A0\u65B0\u7684\u8BED\u8A00\u6587\u672C\u914D\u7F6E</li><li>\u5728\u65B0\u7684\u8BED\u8A00\u6587\u672C\u914D\u7F6E\u4E2D\u62C9\u53D6\u5176\u4ED6\u8BED\u8A00\u5DF2\u6709\u7684\u6587\u672C\u914D\u7F6E</li><li>\u4E3A\u65B0\u7684\u8BED\u8A00\u6587\u672C\u914D\u7F6E\u6DFB\u52A0\u7FFB\u8BD1</li></ol>',5),d=[r];function c(i,s,n,_,h,p){return o(),t("div",null,d)}var m=e(l,[["render",c]]);export{f as __pageData,m as default};
|
|
@ -1 +0,0 @@
|
|||||||
import{_ as e,c as t,o,a}from"./app.38e99b9a.js";const f='{"title":"\u4ECB\u7ECD","description":"","frontmatter":{},"headers":[{"level":2,"title":"\u4ECB\u7ECD","slug":"\u4ECB\u7ECD"},{"level":2,"title":"\u65B0\u672C\u5730\u5316\u6587\u672C\u7684\u6DFB\u52A0","slug":"\u65B0\u672C\u5730\u5316\u6587\u672C\u7684\u6DFB\u52A0"}],"relativePath":"developer/l10n.md","lastUpdated":1682159272000}',l={},r=a("",5),d=[r];function c(i,s,n,_,h,p){return o(),t("div",null,d)}var m=e(l,[["render",c]]);export{f as __pageData,m as default};
|
|
@ -1 +0,0 @@
|
|||||||
import{_ as e,c as a,o as t,a as o}from"./app.38e99b9a.js";const u='{"title":"\u54EA\u5412\u4E3B\u9898\u5F00\u53D1\u73AF\u5883","description":"","frontmatter":{},"headers":[{"level":2,"title":"\u54EA\u5412\u4E3B\u9898\u5F00\u53D1\u73AF\u5883","slug":"\u54EA\u5412\u4E3B\u9898\u5F00\u53D1\u73AF\u5883"},{"level":2,"title":"\u4F7F\u7528\u8BF4\u660E","slug":"\u4F7F\u7528\u8BF4\u660E"},{"level":2,"title":"FAQ","slug":"faq"}],"relativePath":"developer/theme.md","lastUpdated":1682159272000}',c={},d=o('<h2 id="\u54EA\u5412\u4E3B\u9898\u5F00\u53D1\u73AF\u5883" tabindex="-1">\u54EA\u5412\u4E3B\u9898\u5F00\u53D1\u73AF\u5883 <a class="header-anchor" href="#\u54EA\u5412\u4E3B\u9898\u5F00\u53D1\u73AF\u5883" aria-hidden="true">#</a></h2><p>\u54EA\u5412\u9762\u677F\u63D0\u4F9B\u4E86\u4E3B\u9898\u5F00\u53D1\u73AF\u5883\uFF0C\u4F60\u53EF\u4EE5\u4F7F\u7528\u5B83\u6765\u521B\u5EFA\u65B0\u7684\u54EA\u5412\u76D1\u63A7\u4E3B\u9898</p><div class="warning custom-block"><p class="custom-block-title">WARNING</p><p>\u8BF7\u6CE8\u610F\uFF1A \u6B64\u5F00\u53D1\u73AF\u5883\u4EC5\u652F\u6301 <code>dashboard v0.13.16</code> \u53CA\u66F4\u65B0\u7248\u672C\u3002</p></div><h2 id="\u4F7F\u7528\u8BF4\u660E" tabindex="-1">\u4F7F\u7528\u8BF4\u660E <a class="header-anchor" href="#\u4F7F\u7528\u8BF4\u660E" aria-hidden="true">#</a></h2><ol><li>\u514B\u9686<a href="https://github.com/nezhahq/skeleton-custom-theme" target="_blank" rel="noopener noreferrer">\u6B64\u4ED3\u5E93</a>\u5230\u672C\u5730</li><li>\u4FEE\u6539 <code>data/config.yaml</code> \u4E2D\u7684 Oauth2 \u914D\u7F6E\uFF08\u56DE\u8C03\u8FDE\u63A5\u53EF\u4EE5\u586B <code>http://localhost</code>\uFF09</li><li>\u8FD0\u884C <code>docker-compose up</code></li><li>\u5F00\u59CB\u5F00\u53D1</li><li>\u4E3B\u9898\u5236\u4F5C\u5B8C\u6210\u4E4B\u540E\u53EF\u4EE5\u5C06 <code>theme-custom</code> \u653E\u7F6E\u5230\u670D\u52A1\u5668\u4E0A\u7684 <code>/opt/nezha/dashboard/theme-custom</code> \u4F4D\u7F6E</li></ol><h2 id="faq" tabindex="-1">FAQ <a class="header-anchor" href="#faq" aria-hidden="true">#</a></h2><ul><li>\u5982\u679C\u4E0D\u80FD\u4F7F\u7528 <code>80</code> \u7AEF\u53E3\uFF0C\u5728 <code>docker-compose.yaml</code> \u4E2D\u4FEE\u6539\u914D\u7F6E\u3002</li></ul>',7),l=[d];function r(i,s,h,n,_,p){return t(),a("div",null,l)}var f=e(c,[["render",r]]);export{u as __pageData,f as default};
|
|
@ -1 +0,0 @@
|
|||||||
import{_ as e,c as a,o as t,a as o}from"./app.38e99b9a.js";const u='{"title":"\u54EA\u5412\u4E3B\u9898\u5F00\u53D1\u73AF\u5883","description":"","frontmatter":{},"headers":[{"level":2,"title":"\u54EA\u5412\u4E3B\u9898\u5F00\u53D1\u73AF\u5883","slug":"\u54EA\u5412\u4E3B\u9898\u5F00\u53D1\u73AF\u5883"},{"level":2,"title":"\u4F7F\u7528\u8BF4\u660E","slug":"\u4F7F\u7528\u8BF4\u660E"},{"level":2,"title":"FAQ","slug":"faq"}],"relativePath":"developer/theme.md","lastUpdated":1682159272000}',c={},d=o("",7),l=[d];function r(i,s,h,n,_,p){return t(),a("div",null,l)}var f=e(c,[["render",r]]);export{u as __pageData,f as default};
|
|
1
assets/developer_theme.md.3f733e73.js
Normal file
1
assets/developer_theme.md.3f733e73.js
Normal file
@ -0,0 +1 @@
|
|||||||
|
import{_ as e,o,c as a,R as t}from"./chunks/framework.1625126e.js";const u=JSON.parse('{"title":"","description":"","frontmatter":{},"headers":[],"relativePath":"developer/theme.md","filePath":"developer/theme.md","lastUpdated":1687190167000}'),c={name:"developer/theme.md"},l=t('<h2 id="哪吒主题开发环境" tabindex="-1">哪吒主题开发环境 <a class="header-anchor" href="#哪吒主题开发环境" aria-label="Permalink to "哪吒主题开发环境""></a></h2><p>哪吒面板提供了主题开发环境,你可以使用它来创建新的哪吒监控主题</p><div class="warning custom-block"><p class="custom-block-title">WARNING</p><p>请注意: 此开发环境仅支持 <code>dashboard v0.13.16</code> 及更新版本。</p></div><h2 id="使用说明" tabindex="-1">使用说明 <a class="header-anchor" href="#使用说明" aria-label="Permalink to "使用说明""></a></h2><ol><li>克隆<a href="https://github.com/nezhahq/skeleton-custom-theme" target="_blank" rel="noreferrer">此仓库</a>到本地</li><li>修改 <code>data/config.yaml</code> 中的 Oauth2 配置(回调连接可以填 <code>http://localhost</code>)</li><li>运行 <code>docker-compose up</code></li><li>开始开发</li><li>主题制作完成之后可以将 <code>theme-custom</code> 放置到服务器上的 <code>/opt/nezha/dashboard/theme-custom</code> 位置</li></ol><h2 id="faq" tabindex="-1">FAQ <a class="header-anchor" href="#faq" aria-label="Permalink to "FAQ""></a></h2><ul><li>如果不能使用 <code>80</code> 端口,在 <code>docker-compose.yaml</code> 中修改配置。</li></ul>',7),d=[l];function r(s,i,h,n,m,_){return o(),a("div",null,d)}const f=e(c,[["render",r]]);export{u as __pageData,f as default};
|
1
assets/developer_theme.md.3f733e73.lean.js
Normal file
1
assets/developer_theme.md.3f733e73.lean.js
Normal file
@ -0,0 +1 @@
|
|||||||
|
import{_ as e,o,c as a,R as t}from"./chunks/framework.1625126e.js";const u=JSON.parse('{"title":"","description":"","frontmatter":{},"headers":[],"relativePath":"developer/theme.md","filePath":"developer/theme.md","lastUpdated":1687190167000}'),c={name:"developer/theme.md"},l=t("",7),d=[l];function r(s,i,h,n,m,_){return o(),a("div",null,d)}const f=e(c,[["render",r]]);export{u as __pageData,f as default};
|
1
assets/en_US_case_case1.md.4184634e.js
Normal file
1
assets/en_US_case_case1.md.4184634e.js
Normal file
@ -0,0 +1 @@
|
|||||||
|
import{_ as e,o as t,c as r,R as o}from"./chunks/framework.1625126e.js";const d=JSON.parse('{"title":"Build your own Telegram bot to query server information","description":"","frontmatter":{},"headers":[],"relativePath":"en_US/case/case1.md","filePath":"en_US/case/case1.md","lastUpdated":1687190167000}'),a={name:"en_US/case/case1.md"},n=o('<h1 id="build-your-own-telegram-bot-to-query-server-information" tabindex="-1">Build your own Telegram bot to query server information <a class="header-anchor" href="#build-your-own-telegram-bot-to-query-server-information" aria-label="Permalink to "Build your own Telegram bot to query server information""></a></h1><p>Contributors:</p><ul><li><a href="https://github.com/spiritLHLS" target="_blank" rel="noreferrer">spiritLHLS</a></li><li><a href="https://github.com/Erope/" target="_blank" rel="noreferrer">Erope</a></li></ul><p><strong>Project</strong>: <a href="https://github.com/spiritLHLS/nezha_api_tgbot" target="_blank" rel="noreferrer">nezha_api_tgbot</a> (Chinese)</p><p><strong>Mirror backup, non-real-time update</strong>: <a href="https://github.com/nezhahq/nezha_api_tgbot" target="_blank" rel="noreferrer">nezha_api_tgbot</a> (Chinese)</p><p>The bot can request server status information from the Dashboard through the API, and then send the information to the user.<br> You can build this bot to easily view the current status of a given server without opening the Dashboard.</p>',6),i=[n];function s(h,_,l,u,c,p){return t(),r("div",null,i)}const m=e(a,[["render",s]]);export{d as __pageData,m as default};
|
1
assets/en_US_case_case1.md.4184634e.lean.js
Normal file
1
assets/en_US_case_case1.md.4184634e.lean.js
Normal file
@ -0,0 +1 @@
|
|||||||
|
import{_ as e,o as t,c as r,R as o}from"./chunks/framework.1625126e.js";const d=JSON.parse('{"title":"Build your own Telegram bot to query server information","description":"","frontmatter":{},"headers":[],"relativePath":"en_US/case/case1.md","filePath":"en_US/case/case1.md","lastUpdated":1687190167000}'),a={name:"en_US/case/case1.md"},n=o("",6),i=[n];function s(h,_,l,u,c,p){return t(),r("div",null,i)}const m=e(a,[["render",s]]);export{d as __pageData,m as default};
|
@ -1 +0,0 @@
|
|||||||
import{_ as e,c as r,o as t,a as o}from"./app.38e99b9a.js";const b='{"title":"Build your own Telegram bot to query server information","description":"","frontmatter":{},"headers":[],"relativePath":"en_US/case/case1.md","lastUpdated":1682159272000}',a={},n=o('<h1 id="build-your-own-telegram-bot-to-query-server-information" tabindex="-1">Build your own Telegram bot to query server information <a class="header-anchor" href="#build-your-own-telegram-bot-to-query-server-information" aria-hidden="true">#</a></h1><p>Contributors:</p><ul><li><a href="https://github.com/spiritLHLS" target="_blank" rel="noopener noreferrer">spiritLHLS</a></li><li><a href="https://github.com/Erope/" target="_blank" rel="noopener noreferrer">Erope</a></li></ul><p><strong>Project</strong>: <a href="https://github.com/spiritLHLS/nezha_api_tgbot" target="_blank" rel="noopener noreferrer">nezha_api_tgbot</a> (Chinese)</p><p><strong>Mirror backup, non-real-time update</strong>: <a href="https://github.com/nezhahq/nezha_api_tgbot" target="_blank" rel="noopener noreferrer">nezha_api_tgbot</a> (Chinese)</p><p>The bot can request server status information from the Dashboard through the API, and then send the information to the user.<br> You can build this bot to easily view the current status of a given server without opening the Dashboard.</p>',6),i=[n];function s(h,_,p,u,l,c){return t(),r("div",null,i)}var f=e(a,[["render",s]]);export{b as __pageData,f as default};
|
|
@ -1 +0,0 @@
|
|||||||
import{_ as e,c as r,o as t,a as o}from"./app.38e99b9a.js";const b='{"title":"Build your own Telegram bot to query server information","description":"","frontmatter":{},"headers":[],"relativePath":"en_US/case/case1.md","lastUpdated":1682159272000}',a={},n=o("",6),i=[n];function s(h,_,p,u,l,c){return t(),r("div",null,i)}var f=e(a,[["render",s]]);export{b as __pageData,f as default};
|
|
@ -1 +0,0 @@
|
|||||||
import{_ as e}from"./chunks/qrcode.bde14c07.js";import{_ as t,c as r,o,a as s}from"./app.38e99b9a.js";const S='{"title":"Use Siri to run shortcut to check server status in iOS/MacOS","description":"","frontmatter":{},"headers":[{"level":2,"title":"Get shortcut command","slug":"get-shortcut-command"},{"level":2,"title":"How to use","slug":"how-to-use"}],"relativePath":"en_US/case/case2.md","lastUpdated":1682159272000}',a={},c=s('<h1 id="use-siri-to-run-shortcut-to-check-server-status-in-ios-macos" tabindex="-1">Use Siri to run shortcut to check server status in iOS/MacOS <a class="header-anchor" href="#use-siri-to-run-shortcut-to-check-server-status-in-ios-macos" aria-hidden="true">#</a></h1><p>Current Version\uFF1AV1.0 (Chinese)<br> Contributor:</p><ul><li>\u767D\u6B4C <a href="https://github.com/hhhkkk520" target="_blank" rel="noopener noreferrer">hhhkkk520</a></li></ul><h2 id="get-shortcut-command" tabindex="-1">Get shortcut command <a class="header-anchor" href="#get-shortcut-command" aria-hidden="true">#</a></h2><p>Scan the following QR code with your iPhone or iPad to get the shortcut<br><br><img src="'+e+'" alt=""><br><br><br> MacOS users please visit <a href="https://www.icloud.com/shortcuts/312005bf5ffd4387ac92a84056db9f09" target="_blank" rel="noopener noreferrer">here</a> to get the shortcut</p><h2 id="how-to-use" tabindex="-1">How to use <a class="header-anchor" href="#how-to-use" aria-hidden="true">#</a></h2><ul><li>After getting the shortcut, open and edit the shortcut</li><li>Fill in <code>Dashboard URL</code>, <code>API Token</code>, <code>Server ID</code> in the three text boxes</li><li>Save the edit and test run, if you can get the result, the setting is correct.</li><li>Modify the name of the shortcut, such as: Server Status, then you can use Siri command: "Hey Siri, Server Status" to get the server status.</li></ul><div class="warning custom-block"><p class="custom-block-title">WARNING</p><p>Each shortcut can only monitor one server, if you need to monitor more than one server, please copy this shortcut several times and configure them separately, then modify the shortcut name separately, such as; Server 1 Status, Server 2 Status, etc.</p></div>',8),i=[c];function h(n,u,d,l,m,_){return o(),r("div",null,i)}var v=t(a,[["render",h]]);export{S as __pageData,v as default};
|
|
@ -1 +0,0 @@
|
|||||||
import{_ as e}from"./chunks/qrcode.bde14c07.js";import{_ as t,c as r,o,a as s}from"./app.38e99b9a.js";const S='{"title":"Use Siri to run shortcut to check server status in iOS/MacOS","description":"","frontmatter":{},"headers":[{"level":2,"title":"Get shortcut command","slug":"get-shortcut-command"},{"level":2,"title":"How to use","slug":"how-to-use"}],"relativePath":"en_US/case/case2.md","lastUpdated":1682159272000}',a={},c=s("",8),i=[c];function h(n,u,d,l,m,_){return o(),r("div",null,i)}var v=t(a,[["render",h]]);export{S as __pageData,v as default};
|
|
1
assets/en_US_case_case2.md.a2d0c610.js
Normal file
1
assets/en_US_case_case2.md.a2d0c610.js
Normal file
@ -0,0 +1 @@
|
|||||||
|
import{_ as e}from"./chunks/qrcode.59c44dde.js";import{_ as t,o as r,c as o,R as s}from"./chunks/framework.1625126e.js";const f=JSON.parse('{"title":"Use Siri to run shortcut to check server status in iOS/MacOS","description":"","frontmatter":{},"headers":[],"relativePath":"en_US/case/case2.md","filePath":"en_US/case/case2.md","lastUpdated":1687190167000}'),a={name:"en_US/case/case2.md"},c=s('<h1 id="use-siri-to-run-shortcut-to-check-server-status-in-ios-macos" tabindex="-1">Use Siri to run shortcut to check server status in iOS/MacOS <a class="header-anchor" href="#use-siri-to-run-shortcut-to-check-server-status-in-ios-macos" aria-label="Permalink to "Use Siri to run shortcut to check server status in iOS/MacOS""></a></h1><p>Current Version:V1.0 (Chinese)<br> Contributor:</p><ul><li>白歌 <a href="https://github.com/hhhkkk520" target="_blank" rel="noreferrer">hhhkkk520</a></li></ul><h2 id="get-shortcut-command" tabindex="-1">Get shortcut command <a class="header-anchor" href="#get-shortcut-command" aria-label="Permalink to "Get shortcut command""></a></h2><p>Scan the following QR code with your iPhone or iPad to get the shortcut<br><br><img src="'+e+'" alt="coode"><br><br><br> MacOS users please visit <a href="https://www.icloud.com/shortcuts/312005bf5ffd4387ac92a84056db9f09" target="_blank" rel="noreferrer">here</a> to get the shortcut</p><h2 id="how-to-use" tabindex="-1">How to use <a class="header-anchor" href="#how-to-use" aria-label="Permalink to "How to use""></a></h2><ul><li>After getting the shortcut, open and edit the shortcut</li><li>Fill in <code>Dashboard URL</code>, <code>API Token</code>, <code>Server ID</code> in the three text boxes</li><li>Save the edit and test run, if you can get the result, the setting is correct.</li><li>Modify the name of the shortcut, such as: Server Status, then you can use Siri command: "Hey Siri, Server Status" to get the server status.</li></ul><div class="warning custom-block"><p class="custom-block-title">WARNING</p><p>Each shortcut can only monitor one server, if you need to monitor more than one server, please copy this shortcut several times and configure them separately, then modify the shortcut name separately, such as; Server 1 Status, Server 2 Status, etc.</p></div>',8),i=[c];function h(n,u,l,d,m,_){return r(),o("div",null,i)}const b=t(a,[["render",h]]);export{f as __pageData,b as default};
|
1
assets/en_US_case_case2.md.a2d0c610.lean.js
Normal file
1
assets/en_US_case_case2.md.a2d0c610.lean.js
Normal file
@ -0,0 +1 @@
|
|||||||
|
import{_ as e}from"./chunks/qrcode.59c44dde.js";import{_ as t,o as r,c as o,R as s}from"./chunks/framework.1625126e.js";const f=JSON.parse('{"title":"Use Siri to run shortcut to check server status in iOS/MacOS","description":"","frontmatter":{},"headers":[],"relativePath":"en_US/case/case2.md","filePath":"en_US/case/case2.md","lastUpdated":1687190167000}'),a={name:"en_US/case/case2.md"},c=s("",8),i=[c];function h(n,u,l,d,m,_){return r(),o("div",null,i)}const b=t(a,[["render",h]]);export{f as __pageData,b as default};
|
@ -1 +0,0 @@
|
|||||||
import{_ as t,c as e,o as r,a}from"./app.38e99b9a.js";const g='{"title":"Build your own server status query Telegram bot with multi-language and multi-user support","description":"","frontmatter":{},"headers":[{"level":2,"title":"Features","slug":"features"},{"level":2,"title":"Commands list","slug":"commands-list"}],"relativePath":"en_US/case/case3.md","lastUpdated":1682159272000}',d={},i=a('<h1 id="build-your-own-server-status-query-telegram-bot-with-multi-language-and-multi-user-support" tabindex="-1">Build your own server status query Telegram bot with multi-language and multi-user support <a class="header-anchor" href="#build-your-own-server-status-query-telegram-bot-with-multi-language-and-multi-user-support" aria-hidden="true">#</a></h1><p>Contributor:</p><ul><li><a href="https://github.com/tech-fever" target="_blank" rel="noopener noreferrer">tech-fever</a></li></ul><p>GitHub project: <a href="https://github.com/tech-fever/nezha_telegram_bot" target="_blank" rel="noopener noreferrer">nezha_telegram_bot</a>\uFF08English is already supported\uFF09</p><p>Mirror backup, non-real-time update : <a href="https://github.com/nezhahq/nezha_telegram_bot" target="_blank" rel="noopener noreferrer">nezha_telegram_bot</a>\uFF08English is already supported\uFF09</p><h2 id="features" tabindex="-1">Features <a class="header-anchor" href="#features" aria-hidden="true">#</a></h2><ul><li>[x] Support Chinese/English multi-language switch</li><li>[x] Support tag statistics (CPU, disk, memory, upstream and downstream speed, traffic statistics, etc.)</li><li>[x] Support real-time refresh of single server data</li><li>[x] Support keyboard interactive query</li><li>[x] Support query by command</li><li>[x] Support adding bot to group, privacy protection of bot replies in group chat</li><li>[x] Support bot messages automatic deletion in group chat within 20 seconds</li><li>[x] Support docker deployment</li></ul><h2 id="commands-list" tabindex="-1">Commands list <a class="header-anchor" href="#commands-list" aria-hidden="true">#</a></h2><table><thead><tr><th>Command</th><th>Description</th><th>Private chat only</th></tr></thead><tbody><tr><td>start</td><td>Getting started with the keyboard main menu</td><td>\u2714\uFE0F</td></tr><tr><td>help</td><td>help message</td><td>\u274C</td></tr><tr><td>add</td><td>Add Nezha monitoring url link and token</td><td>\u2714\uFE0F</td></tr><tr><td>url</td><td>Add Nezha monitoring url link</td><td>\u2714\uFE0F</td></tr><tr><td>token</td><td>Add Nezha monitoring token</td><td>\u2714\uFE0F</td></tr><tr><td>info</td><td>Get saved Nezha monitoring url link and token</td><td>\u2714\uFE0F</td></tr><tr><td>delete</td><td>Delete saved Nezha monitoring url link and token</td><td>\u2714\uFE0F</td></tr><tr><td>id</td><td>Add an integer id after the command to query the information of a single server (refresh button only available in private chat)</td><td>\u274C</td></tr><tr><td>all</td><td>Query statistics for all servers</td><td>\u274C</td></tr><tr><td>search</td><td>Search for keywords in server names (multiple keywords supported, split by spaces)</td><td>\u274C</td></tr></tbody></table>',9),o=[i];function n(s,l,u,h,p,m){return r(),e("div",null,o)}var _=t(d,[["render",n]]);export{g as __pageData,_ as default};
|
|
@ -1 +0,0 @@
|
|||||||
import{_ as t,c as e,o as r,a}from"./app.38e99b9a.js";const g='{"title":"Build your own server status query Telegram bot with multi-language and multi-user support","description":"","frontmatter":{},"headers":[{"level":2,"title":"Features","slug":"features"},{"level":2,"title":"Commands list","slug":"commands-list"}],"relativePath":"en_US/case/case3.md","lastUpdated":1682159272000}',d={},i=a("",9),o=[i];function n(s,l,u,h,p,m){return r(),e("div",null,o)}var _=t(d,[["render",n]]);export{g as __pageData,_ as default};
|
|
1
assets/en_US_case_case3.md.6c813a79.js
Normal file
1
assets/en_US_case_case3.md.6c813a79.js
Normal file
@ -0,0 +1 @@
|
|||||||
|
import{_ as t,o as e,c as r,R as a}from"./chunks/framework.1625126e.js";const g=JSON.parse('{"title":"Build your own server status query Telegram bot with multi-language and multi-user support","description":"","frontmatter":{},"headers":[],"relativePath":"en_US/case/case3.md","filePath":"en_US/case/case3.md","lastUpdated":1687190167000}'),d={name:"en_US/case/case3.md"},i=a('<h1 id="build-your-own-server-status-query-telegram-bot-with-multi-language-and-multi-user-support" tabindex="-1">Build your own server status query Telegram bot with multi-language and multi-user support <a class="header-anchor" href="#build-your-own-server-status-query-telegram-bot-with-multi-language-and-multi-user-support" aria-label="Permalink to "Build your own server status query Telegram bot with multi-language and multi-user support""></a></h1><p>Contributor:</p><ul><li><a href="https://github.com/tech-fever" target="_blank" rel="noreferrer">tech-fever</a></li></ul><p>GitHub project: <a href="https://github.com/tech-fever/nezha_telegram_bot" target="_blank" rel="noreferrer">nezha_telegram_bot</a>(English is already supported)</p><p>Mirror backup, non-real-time update : <a href="https://github.com/nezhahq/nezha_telegram_bot" target="_blank" rel="noreferrer">nezha_telegram_bot</a>(English is already supported)</p><h2 id="features" tabindex="-1">Features <a class="header-anchor" href="#features" aria-label="Permalink to "Features""></a></h2><ul><li>[x] Support Chinese/English multi-language switch</li><li>[x] Support tag statistics (CPU, disk, memory, upstream and downstream speed, traffic statistics, etc.)</li><li>[x] Support real-time refresh of single server data</li><li>[x] Support keyboard interactive query</li><li>[x] Support query by command</li><li>[x] Support adding bot to group, privacy protection of bot replies in group chat</li><li>[x] Support bot messages automatic deletion in group chat within 20 seconds</li><li>[x] Support docker deployment</li></ul><h2 id="commands-list" tabindex="-1">Commands list <a class="header-anchor" href="#commands-list" aria-label="Permalink to "Commands list""></a></h2><table><thead><tr><th>Command</th><th>Description</th><th>Private chat only</th></tr></thead><tbody><tr><td>start</td><td>Getting started with the keyboard main menu</td><td>✔️</td></tr><tr><td>help</td><td>help message</td><td>❌</td></tr><tr><td>add</td><td>Add Nezha monitoring url link and token</td><td>✔️</td></tr><tr><td>url</td><td>Add Nezha monitoring url link</td><td>✔️</td></tr><tr><td>token</td><td>Add Nezha monitoring token</td><td>✔️</td></tr><tr><td>info</td><td>Get saved Nezha monitoring url link and token</td><td>✔️</td></tr><tr><td>delete</td><td>Delete saved Nezha monitoring url link and token</td><td>✔️</td></tr><tr><td>id</td><td>Add an integer id after the command to query the information of a single server (refresh button only available in private chat)</td><td>❌</td></tr><tr><td>all</td><td>Query statistics for all servers</td><td>❌</td></tr><tr><td>search</td><td>Search for keywords in server names (multiple keywords supported, split by spaces)</td><td>❌</td></tr></tbody></table>',9),o=[i];function s(l,n,u,h,p,m){return e(),r("div",null,o)}const _=t(d,[["render",s]]);export{g as __pageData,_ as default};
|
1
assets/en_US_case_case3.md.6c813a79.lean.js
Normal file
1
assets/en_US_case_case3.md.6c813a79.lean.js
Normal file
@ -0,0 +1 @@
|
|||||||
|
import{_ as t,o as e,c as r,R as a}from"./chunks/framework.1625126e.js";const g=JSON.parse('{"title":"Build your own server status query Telegram bot with multi-language and multi-user support","description":"","frontmatter":{},"headers":[],"relativePath":"en_US/case/case3.md","filePath":"en_US/case/case3.md","lastUpdated":1687190167000}'),d={name:"en_US/case/case3.md"},i=a("",9),o=[i];function s(l,n,u,h,p,m){return e(),r("div",null,o)}const _=t(d,[["render",s]]);export{g as __pageData,_ as default};
|
@ -1 +0,0 @@
|
|||||||
import{_ as e,c as a,o as t,a as r}from"./app.38e99b9a.js";const l='{"title":"Fake-agent, monitoring data cheater","description":"","frontmatter":{},"headers":[],"relativePath":"en_US/case/case4.md","lastUpdated":1682159272000}',n={},o=r('<h1 id="fake-agent-monitoring-data-cheater" tabindex="-1">Fake-agent, monitoring data cheater <a class="header-anchor" href="#fake-agent-monitoring-data-cheater" aria-hidden="true">#</a></h1><p>Contributor:</p><ul><li><a href="https://github.com/dysf888" target="_blank" rel="noopener noreferrer">dysf888</a></li></ul><p>GitHub project: <a href="https://github.com/dysf888/fake-nezha-agent" target="_blank" rel="noopener noreferrer">fake-nezha-agent</a>\uFF08Chinese\uFF09<br> Mirror backup, non-real-time update \uFF1A<a href="https://github.com/nezhahq/fake-nezha-agent" target="_blank" rel="noopener noreferrer">fake-nezha-agent</a>\uFF08Chinese\uFF09</p><p>You can modify the monitoring data uploaded to Dashboard by the Agent<br> Use it for cheating \u{1F608}</p>',5),i=[o];function h(s,c,d,_,p,f){return t(),a("div",null,i)}var u=e(n,[["render",h]]);export{l as __pageData,u as default};
|
|
@ -1 +0,0 @@
|
|||||||
import{_ as e,c as a,o as t,a as r}from"./app.38e99b9a.js";const l='{"title":"Fake-agent, monitoring data cheater","description":"","frontmatter":{},"headers":[],"relativePath":"en_US/case/case4.md","lastUpdated":1682159272000}',n={},o=r("",5),i=[o];function h(s,c,d,_,p,f){return t(),a("div",null,i)}var u=e(n,[["render",h]]);export{l as __pageData,u as default};
|
|
1
assets/en_US_case_case4.md.b17c51fa.js
Normal file
1
assets/en_US_case_case4.md.b17c51fa.js
Normal file
@ -0,0 +1 @@
|
|||||||
|
import{_ as e,o as a,c as t,R as r}from"./chunks/framework.1625126e.js";const g=JSON.parse('{"title":"Fake-agent, monitoring data cheater","description":"","frontmatter":{},"headers":[],"relativePath":"en_US/case/case4.md","filePath":"en_US/case/case4.md","lastUpdated":1687190167000}'),n={name:"en_US/case/case4.md"},o=r('<h1 id="fake-agent-monitoring-data-cheater" tabindex="-1">Fake-agent, monitoring data cheater <a class="header-anchor" href="#fake-agent-monitoring-data-cheater" aria-label="Permalink to "Fake-agent, monitoring data cheater""></a></h1><p>Contributor:</p><ul><li><a href="https://github.com/dysf888" target="_blank" rel="noreferrer">dysf888</a></li></ul><p>GitHub project: <a href="https://github.com/dysf888/fake-nezha-agent" target="_blank" rel="noreferrer">fake-nezha-agent</a>(Chinese)<br> Mirror backup, non-real-time update :<a href="https://github.com/nezhahq/fake-nezha-agent" target="_blank" rel="noreferrer">fake-nezha-agent</a>(Chinese)</p><p>You can modify the monitoring data uploaded to Dashboard by the Agent<br> Use it for cheating 😈</p>',5),i=[o];function s(c,h,_,d,f,l){return a(),t("div",null,i)}const m=e(n,[["render",s]]);export{g as __pageData,m as default};
|
1
assets/en_US_case_case4.md.b17c51fa.lean.js
Normal file
1
assets/en_US_case_case4.md.b17c51fa.lean.js
Normal file
@ -0,0 +1 @@
|
|||||||
|
import{_ as e,o as a,c as t,R as r}from"./chunks/framework.1625126e.js";const g=JSON.parse('{"title":"Fake-agent, monitoring data cheater","description":"","frontmatter":{},"headers":[],"relativePath":"en_US/case/case4.md","filePath":"en_US/case/case4.md","lastUpdated":1687190167000}'),n={name:"en_US/case/case4.md"},o=r("",5),i=[o];function s(c,h,_,d,f,l){return a(),t("div",null,i)}const m=e(n,[["render",s]]);export{g as __pageData,m as default};
|
@ -1 +0,0 @@
|
|||||||
import{_ as o,c as a,o as n,b as e,d as t}from"./app.38e99b9a.js";const _='{"title":"Home","description":"","frontmatter":{"home":true,"heroImage":"https://raw.githubusercontent.com/naiba/nezha/master/resource/static/brand.svg","heroText":"Nezha Monitoring Community Project","tagline":"Related projects contributed by Nezha Monitoring community, provide more extensions for Nezha Monitoring","actionText":"Learn More \u2192","actionLink":"/en_US/case/case1","features":[{"title":"Submit a project","details":"We welcome you to submit your own projects, please join the Telegram group and contact the administrator for more information"},{"title":"Important Notes","details":"All projects are contributed by community members. Please be aware that Nezha monitoring team cannot be held responsible for community projects including and not limited to warranty, availability, security, etc."}]},"headers":[],"relativePath":"en_US/case/index.md","lastUpdated":1682159272000}',r={},i=e("p",null,[e("br"),t("This work is licensed under a "),e("a",{rel:"license",href:"http://creativecommons.org/licenses/by-nc-sa/4.0/"},"Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License"),t(".")],-1),s=[i];function c(m,l,d,u,p,h){return n(),a("div",null,s)}var f=o(r,[["render",c]]);export{_ as __pageData,f as default};
|
|
@ -1 +0,0 @@
|
|||||||
import{_ as o,c as a,o as n,b as e,d as t}from"./app.38e99b9a.js";const _='{"title":"Home","description":"","frontmatter":{"home":true,"heroImage":"https://raw.githubusercontent.com/naiba/nezha/master/resource/static/brand.svg","heroText":"Nezha Monitoring Community Project","tagline":"Related projects contributed by Nezha Monitoring community, provide more extensions for Nezha Monitoring","actionText":"Learn More \u2192","actionLink":"/en_US/case/case1","features":[{"title":"Submit a project","details":"We welcome you to submit your own projects, please join the Telegram group and contact the administrator for more information"},{"title":"Important Notes","details":"All projects are contributed by community members. Please be aware that Nezha monitoring team cannot be held responsible for community projects including and not limited to warranty, availability, security, etc."}]},"headers":[],"relativePath":"en_US/case/index.md","lastUpdated":1682159272000}',r={},i=e("p",null,[e("br"),t("This work is licensed under a "),e("a",{rel:"license",href:"http://creativecommons.org/licenses/by-nc-sa/4.0/"},"Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License"),t(".")],-1),s=[i];function c(m,l,d,u,p,h){return n(),a("div",null,s)}var f=o(r,[["render",c]]);export{_ as __pageData,f as default};
|
|
1
assets/en_US_case_index.md.c59e34c7.js
Normal file
1
assets/en_US_case_index.md.c59e34c7.js
Normal file
@ -0,0 +1 @@
|
|||||||
|
import{_ as o,o as a,c as n,z as e,a as t}from"./chunks/framework.1625126e.js";const b=JSON.parse('{"title":"","description":"","frontmatter":{"heroImage":"https://raw.githubusercontent.com/naiba/nezha/master/resource/static/brand.svg","heroText":"Nezha Monitoring Community Project","tagline":"Related projects contributed by Nezha Monitoring community, provide more extensions for Nezha Monitoring","actionText":"Learn More →","actionLink":"/en_US/case/case1","features":[{"title":"Submit a project","details":"We welcome you to submit your own projects, please join the Telegram group and contact the administrator for more information"},{"title":"Important Notes","details":"All projects are contributed by community members. Please be aware that Nezha monitoring team cannot be held responsible for community projects including and not limited to warranty, availability, security, etc."}]},"headers":[],"relativePath":"en_US/case/index.md","filePath":"en_US/case/index.md","lastUpdated":1687190167000}'),r={name:"en_US/case/index.md"},i=e("p",null,[e("br"),t("This work is licensed under a "),e("a",{rel:"license",href:"http://creativecommons.org/licenses/by-nc-sa/4.0/"},"Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License"),t(".")],-1),s=[i];function c(m,l,d,p,u,h){return a(),n("div",null,s)}const f=o(r,[["render",c]]);export{b as __pageData,f as default};
|
1
assets/en_US_case_index.md.c59e34c7.lean.js
Normal file
1
assets/en_US_case_index.md.c59e34c7.lean.js
Normal file
@ -0,0 +1 @@
|
|||||||
|
import{_ as o,o as a,c as n,z as e,a as t}from"./chunks/framework.1625126e.js";const b=JSON.parse('{"title":"","description":"","frontmatter":{"heroImage":"https://raw.githubusercontent.com/naiba/nezha/master/resource/static/brand.svg","heroText":"Nezha Monitoring Community Project","tagline":"Related projects contributed by Nezha Monitoring community, provide more extensions for Nezha Monitoring","actionText":"Learn More →","actionLink":"/en_US/case/case1","features":[{"title":"Submit a project","details":"We welcome you to submit your own projects, please join the Telegram group and contact the administrator for more information"},{"title":"Important Notes","details":"All projects are contributed by community members. Please be aware that Nezha monitoring team cannot be held responsible for community projects including and not limited to warranty, availability, security, etc."}]},"headers":[],"relativePath":"en_US/case/index.md","filePath":"en_US/case/index.md","lastUpdated":1687190167000}'),r={name:"en_US/case/index.md"},i=e("p",null,[e("br"),t("This work is licensed under a "),e("a",{rel:"license",href:"http://creativecommons.org/licenses/by-nc-sa/4.0/"},"Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License"),t(".")],-1),s=[i];function c(m,l,d,p,u,h){return a(),n("div",null,s)}const f=o(r,[["render",c]]);export{b as __pageData,f as default};
|
@ -1 +0,0 @@
|
|||||||
import{_ as o,c as a,o as n,b as e,d as t}from"./app.38e99b9a.js";const v='{"title":"Home","description":"","frontmatter":{"home":true,"heroImage":"https://raw.githubusercontent.com/naiba/nezha/master/resource/static/brand.svg","heroText":"Development Manual","tagline":"Welcome to the Nezha Monitoring Development Manual.","actionText":"Start Now \u2192","actionLink":"/en_US/developer/theme","footer":"Copyright \xA9 2022-present Nezhahq"},"headers":[],"relativePath":"en_US/developer/index.md","lastUpdated":1682159272000}',r={},s=e("p",null,[e("br"),t("This work is licensed under a "),e("a",{rel:"license",href:"http://creativecommons.org/licenses/by-nc-sa/4.0/"},"Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License"),t(".")],-1),i=[s];function c(l,d,h,m,p,_){return n(),a("div",null,i)}var f=o(r,[["render",c]]);export{v as __pageData,f as default};
|
|
@ -1 +0,0 @@
|
|||||||
import{_ as o,c as a,o as n,b as e,d as t}from"./app.38e99b9a.js";const v='{"title":"Home","description":"","frontmatter":{"home":true,"heroImage":"https://raw.githubusercontent.com/naiba/nezha/master/resource/static/brand.svg","heroText":"Development Manual","tagline":"Welcome to the Nezha Monitoring Development Manual.","actionText":"Start Now \u2192","actionLink":"/en_US/developer/theme","footer":"Copyright \xA9 2022-present Nezhahq"},"headers":[],"relativePath":"en_US/developer/index.md","lastUpdated":1682159272000}',r={},s=e("p",null,[e("br"),t("This work is licensed under a "),e("a",{rel:"license",href:"http://creativecommons.org/licenses/by-nc-sa/4.0/"},"Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License"),t(".")],-1),i=[s];function c(l,d,h,m,p,_){return n(),a("div",null,i)}var f=o(r,[["render",c]]);export{v as __pageData,f as default};
|
|
1
assets/en_US_developer_index.md.722364da.js
Normal file
1
assets/en_US_developer_index.md.722364da.js
Normal file
@ -0,0 +1 @@
|
|||||||
|
import{_ as n,o as a,c as o,z as e,a as t}from"./chunks/framework.1625126e.js";const v=JSON.parse('{"title":"","description":"","frontmatter":{"heroImage":"https://raw.githubusercontent.com/naiba/nezha/master/resource/static/brand.svg","heroText":"Development Manual","tagline":"Welcome to the Nezha Monitoring Development Manual.","actionText":"Start Now →","actionLink":"/en_US/developer/theme"},"headers":[],"relativePath":"en_US/developer/index.md","filePath":"en_US/developer/index.md","lastUpdated":1687190167000}'),r={name:"en_US/developer/index.md"},s=e("p",null,[e("br"),t("This work is licensed under a "),e("a",{rel:"license",href:"http://creativecommons.org/licenses/by-nc-sa/4.0/"},"Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License"),t(".")],-1),i=[s];function c(l,d,m,p,_,h){return a(),o("div",null,i)}const x=n(r,[["render",c]]);export{v as __pageData,x as default};
|
1
assets/en_US_developer_index.md.722364da.lean.js
Normal file
1
assets/en_US_developer_index.md.722364da.lean.js
Normal file
@ -0,0 +1 @@
|
|||||||
|
import{_ as n,o as a,c as o,z as e,a as t}from"./chunks/framework.1625126e.js";const v=JSON.parse('{"title":"","description":"","frontmatter":{"heroImage":"https://raw.githubusercontent.com/naiba/nezha/master/resource/static/brand.svg","heroText":"Development Manual","tagline":"Welcome to the Nezha Monitoring Development Manual.","actionText":"Start Now →","actionLink":"/en_US/developer/theme"},"headers":[],"relativePath":"en_US/developer/index.md","filePath":"en_US/developer/index.md","lastUpdated":1687190167000}'),r={name:"en_US/developer/index.md"},s=e("p",null,[e("br"),t("This work is licensed under a "),e("a",{rel:"license",href:"http://creativecommons.org/licenses/by-nc-sa/4.0/"},"Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License"),t(".")],-1),i=[s];function c(l,d,m,p,_,h){return a(),o("div",null,i)}const x=n(r,[["render",c]]);export{v as __pageData,x as default};
|
1
assets/en_US_developer_l10n.md.830faa6a.js
Normal file
1
assets/en_US_developer_l10n.md.830faa6a.js
Normal file
@ -0,0 +1 @@
|
|||||||
|
import{_ as e,o as t,c as a,R as n}from"./chunks/framework.1625126e.js";const g=JSON.parse('{"title":"","description":"","frontmatter":{},"headers":[],"relativePath":"en_US/developer/l10n.md","filePath":"en_US/developer/l10n.md","lastUpdated":1687190167000}'),o={name:"en_US/developer/l10n.md"},i=n('<p><strong>Nezha Monitoring's Dashboard has added localization to support multiple languages, and you can follow these steps to support localization when developing new features</strong></p><h2 id="introduction" tabindex="-1">Introduction <a class="header-anchor" href="#introduction" aria-label="Permalink to "Introduction""></a></h2><ol><li>You can directly use the text configuration already available in <code>/resource/l10n/en-US.toml</code> to replace the text in the new feature.</li><li>If there is new text in the new feature, please refer to the configuration text in <code>en-US.toml</code>, pull the new text into the configuration files of other languages such as <code>en-US.toml</code>, and add translations.</li></ol><h2 id="adding-a-new-localized-text-file" tabindex="-1">Adding a new localized text file <a class="header-anchor" href="#adding-a-new-localized-text-file" aria-label="Permalink to "Adding a new localized text file""></a></h2><ol><li>Add a new language text configuration in <code>/resource/l10n/</code>.</li><li>Pull existing text configurations from other languages in the new language text configuration.</li><li>Add translations for the new language text configuration.</li></ol>',5),l=[i];function r(d,c,s,u,h,f){return t(),a("div",null,l)}const p=e(o,[["render",r]]);export{g as __pageData,p as default};
|
1
assets/en_US_developer_l10n.md.830faa6a.lean.js
Normal file
1
assets/en_US_developer_l10n.md.830faa6a.lean.js
Normal file
@ -0,0 +1 @@
|
|||||||
|
import{_ as e,o as t,c as a,R as n}from"./chunks/framework.1625126e.js";const g=JSON.parse('{"title":"","description":"","frontmatter":{},"headers":[],"relativePath":"en_US/developer/l10n.md","filePath":"en_US/developer/l10n.md","lastUpdated":1687190167000}'),o={name:"en_US/developer/l10n.md"},i=n("",5),l=[i];function r(d,c,s,u,h,f){return t(),a("div",null,l)}const p=e(o,[["render",r]]);export{g as __pageData,p as default};
|
@ -1 +0,0 @@
|
|||||||
import{_ as e,c as t,o as n,a}from"./app.38e99b9a.js";const _='{"title":"Introduction","description":"","frontmatter":{},"headers":[{"level":2,"title":"Introduction","slug":"introduction"},{"level":2,"title":"Adding a new localized text file","slug":"adding-a-new-localized-text-file"}],"relativePath":"en_US/developer/l10n.md","lastUpdated":1682159272000}',o={},i=a('<p><strong>Nezha Monitoring's Dashboard has added localization to support multiple languages, and you can follow these steps to support localization when developing new features</strong></p><h2 id="introduction" tabindex="-1">Introduction <a class="header-anchor" href="#introduction" aria-hidden="true">#</a></h2><ol><li>You can directly use the text configuration already available in <code>/resource/l10n/en-US.toml</code> to replace the text in the new feature.</li><li>If there is new text in the new feature, please refer to the configuration text in <code>en-US.toml</code>, pull the new text into the configuration files of other languages such as <code>en-US.toml</code>, and add translations.</li></ol><h2 id="adding-a-new-localized-text-file" tabindex="-1">Adding a new localized text file <a class="header-anchor" href="#adding-a-new-localized-text-file" aria-hidden="true">#</a></h2><ol><li>Add a new language text configuration in <code>/resource/l10n/</code>.</li><li>Pull existing text configurations from other languages in the new language text configuration.</li><li>Add translations for the new language text configuration.</li></ol>',5),l=[i];function d(r,c,s,u,h,g){return n(),t("div",null,l)}var p=e(o,[["render",d]]);export{_ as __pageData,p as default};
|
|
@ -1 +0,0 @@
|
|||||||
import{_ as e,c as t,o as n,a}from"./app.38e99b9a.js";const _='{"title":"Introduction","description":"","frontmatter":{},"headers":[{"level":2,"title":"Introduction","slug":"introduction"},{"level":2,"title":"Adding a new localized text file","slug":"adding-a-new-localized-text-file"}],"relativePath":"en_US/developer/l10n.md","lastUpdated":1682159272000}',o={},i=a("",5),l=[i];function d(r,c,s,u,h,g){return n(),t("div",null,l)}var p=e(o,[["render",d]]);export{_ as __pageData,p as default};
|
|
@ -1 +0,0 @@
|
|||||||
import{_ as e,c as o,o as t,a as n}from"./app.38e99b9a.js";const v='{"title":"Nezha Theme Development Environment","description":"","frontmatter":{},"headers":[{"level":2,"title":"Nezha Theme Development Environment","slug":"nezha-theme-development-environment"},{"level":2,"title":"How to use","slug":"how-to-use"},{"level":2,"title":"FAQ","slug":"faq"}],"relativePath":"en_US/developer/theme.md","lastUpdated":1682159272000}',a={},i=n('<h2 id="nezha-theme-development-environment" tabindex="-1">Nezha Theme Development Environment <a class="header-anchor" href="#nezha-theme-development-environment" aria-hidden="true">#</a></h2><p>Nezha Monitoring provides a theme development environment that you can use to create new Nezha Monitoring themes</p><div class="warning custom-block"><p class="custom-block-title">WARNING</p><p>Please note: This development environment only supports <code>dashboard v0.13.16</code> and newer versions.</p></div><h2 id="how-to-use" tabindex="-1">How to use <a class="header-anchor" href="#how-to-use" aria-hidden="true">#</a></h2><ol><li>Clone <a href="https://github.com/nezhahq/skeleton-custom-theme" target="_blank" rel="noopener noreferrer">this repository</a> to local</li><li>Modify the Oauth2 configuration in <code>data/config.yaml</code>\uFF08The callback connection can be filled with <code>http://localhost</code>\uFF09</li><li>Run <code>docker-compose up</code></li><li>Start development</li><li>Once the theme has been created, you can place <code>theme-custom</code> in <code>/opt/nezha/dashboard/theme-custom</code> on the server</li></ol><h2 id="faq" tabindex="-1">FAQ <a class="header-anchor" href="#faq" aria-hidden="true">#</a></h2><ul><li>If you can't use port <code>80</code>, change the configuration in <code>docker-compose.yaml</code>.</li></ul>',7),c=[i];function l(r,h,d,s,m,p){return t(),o("div",null,c)}var _=e(a,[["render",l]]);export{v as __pageData,_ as default};
|
|
@ -1 +0,0 @@
|
|||||||
import{_ as e,c as o,o as t,a as n}from"./app.38e99b9a.js";const v='{"title":"Nezha Theme Development Environment","description":"","frontmatter":{},"headers":[{"level":2,"title":"Nezha Theme Development Environment","slug":"nezha-theme-development-environment"},{"level":2,"title":"How to use","slug":"how-to-use"},{"level":2,"title":"FAQ","slug":"faq"}],"relativePath":"en_US/developer/theme.md","lastUpdated":1682159272000}',a={},i=n("",7),c=[i];function l(r,h,d,s,m,p){return t(),o("div",null,c)}var _=e(a,[["render",l]]);export{v as __pageData,_ as default};
|
|
1
assets/en_US_developer_theme.md.71386f12.js
Normal file
1
assets/en_US_developer_theme.md.71386f12.js
Normal file
@ -0,0 +1 @@
|
|||||||
|
import{_ as e,o,c as t,R as a}from"./chunks/framework.1625126e.js";const _=JSON.parse('{"title":"","description":"","frontmatter":{},"headers":[],"relativePath":"en_US/developer/theme.md","filePath":"en_US/developer/theme.md","lastUpdated":1687190167000}'),n={name:"en_US/developer/theme.md"},c=a('<h2 id="nezha-theme-development-environment" tabindex="-1">Nezha Theme Development Environment <a class="header-anchor" href="#nezha-theme-development-environment" aria-label="Permalink to "Nezha Theme Development Environment""></a></h2><p>Nezha Monitoring provides a theme development environment that you can use to create new Nezha Monitoring themes</p><div class="warning custom-block"><p class="custom-block-title">WARNING</p><p>Please note: This development environment only supports <code>dashboard v0.13.16</code> and newer versions.</p></div><h2 id="how-to-use" tabindex="-1">How to use <a class="header-anchor" href="#how-to-use" aria-label="Permalink to "How to use""></a></h2><ol><li>Clone <a href="https://github.com/nezhahq/skeleton-custom-theme" target="_blank" rel="noreferrer">this repository</a> to local</li><li>Modify the Oauth2 configuration in <code>data/config.yaml</code>(The callback connection can be filled with <code>http://localhost</code>)</li><li>Run <code>docker-compose up</code></li><li>Start development</li><li>Once the theme has been created, you can place <code>theme-custom</code> in <code>/opt/nezha/dashboard/theme-custom</code> on the server</li></ol><h2 id="faq" tabindex="-1">FAQ <a class="header-anchor" href="#faq" aria-label="Permalink to "FAQ""></a></h2><ul><li>If you can't use port <code>80</code>, change the configuration in <code>docker-compose.yaml</code>.</li></ul>',7),r=[c];function l(i,h,d,s,m,p){return o(),t("div",null,r)}const v=e(n,[["render",l]]);export{_ as __pageData,v as default};
|
1
assets/en_US_developer_theme.md.71386f12.lean.js
Normal file
1
assets/en_US_developer_theme.md.71386f12.lean.js
Normal file
@ -0,0 +1 @@
|
|||||||
|
import{_ as e,o,c as t,R as a}from"./chunks/framework.1625126e.js";const _=JSON.parse('{"title":"","description":"","frontmatter":{},"headers":[],"relativePath":"en_US/developer/theme.md","filePath":"en_US/developer/theme.md","lastUpdated":1687190167000}'),n={name:"en_US/developer/theme.md"},c=a("",7),r=[c];function l(i,h,d,s,m,p){return o(),t("div",null,r)}const v=e(n,[["render",l]]);export{_ as __pageData,v as default};
|
@ -1,147 +0,0 @@
|
|||||||
import{_ as n,c as a,o as t,a as s}from"./app.38e99b9a.js";const k='{"title":"Install Agent using one-click script","description":"","frontmatter":{},"headers":[{"level":2,"title":"Install Agent using one-click script","slug":"install-agent-using-one-click-script"},{"level":3,"title":"Preparation","slug":"preparation"},{"level":3,"title":"One-click installation on Linux (Ubuntu, Debian, CentOS)","slug":"one-click-installation-on-linux-ubuntu-debian-centos"},{"level":3,"title":"One-click installation on Windows","slug":"one-click-installation-on-windows"},{"level":2,"title":"Other ways to install Agent","slug":"other-ways-to-install-agent"},{"level":3,"title":"Installing Agent on Linux (Ubuntu, Debian, CentOS)","slug":"installing-agent-on-linux-ubuntu-debian-centos"},{"level":3,"title":"Installing Agent on other Linux (such as alpine use oprec not systemd)","slug":"installing-agent-on-other-linux-such-as-alpine-use-oprec-not-systemd"},{"level":3,"title":"Installing Agent on Windows","slug":"installing-agent-on-windows"},{"level":3,"title":"Installing Agent on Synology DSM","slug":"installing-agent-on-synology-dsm"},{"level":3,"title":"Installing Agent on MacOS","slug":"installing-agent-on-macos"},{"level":3,"title":"Installing Agent on OpenWRT","slug":"installing-agent-on-openwrt"},{"level":2,"title":"FAQ","slug":"faq"},{"level":3,"title":"Is there a Docker image for Agent?","slug":"is-there-a-docker-image-for-agent"}],"relativePath":"en_US/guide/agent.md","lastUpdated":1682159272000}',e={},o=s(`<p><strong>The service in the monitored server is called Agent. This document will describe how to install the Agent on the monitored server and connect it with Dashboard</strong><br><br></p><h2 id="install-agent-using-one-click-script" tabindex="-1">Install Agent using one-click script <a class="header-anchor" href="#install-agent-using-one-click-script" aria-hidden="true">#</a></h2><p>Nezha Monitoring now supports one-click installation of the Agent on Windows and Linux. Follow the steps in this document and you can easily deploy it on your server<br><br></p><h3 id="preparation" tabindex="-1">Preparation <a class="header-anchor" href="#preparation" aria-hidden="true">#</a></h3><p>First of all, you need to set up the communication domain name in the settings page of the admin panel, this domain name can not connect to the CDN, here is the sample communication domain name "<a href="http://data.example.com" target="_blank" rel="noopener noreferrer">data.example.com</a>" mentioned earlier for demonstration<br> Enter the administration panel, go to the "Settings" page, in the item "CDN Bypassed Domain/IP ", fill in the communication domain name, and then click "Save"<br><br></p><h3 id="one-click-installation-on-linux-ubuntu-debian-centos" tabindex="-1">One-click installation on Linux (Ubuntu, Debian, CentOS) <a class="header-anchor" href="#one-click-installation-on-linux-ubuntu-debian-centos" aria-hidden="true">#</a></h3><ul><li>First add a server in the admin panel</li><li>Click on the green Linux icon button next to the newly added server and copy the one-click installation command</li><li>Run the copied one-click installation command on the monitored server, wait for the installation to complete, and then return to the Dashboard home page to see if the server is online.<br><br></li></ul><h3 id="one-click-installation-on-windows" tabindex="-1">One-click installation on Windows <a class="header-anchor" href="#one-click-installation-on-windows" aria-hidden="true">#</a></h3><ul><li>First add a server in the admin panel</li><li>Click on the green Linux icon button next to the newly added server and copy the one-click installation command</li><li>Login to Windows Server, open PowerShell, and run the copied installation command in PowerShell</li><li>If you encounter the prompt "Implement Policy Change" please select Y</li><li>Wait for the installation to complete and return to the Dashboard home page to see if the server is online<br><br><br><br></li></ul><h2 id="other-ways-to-install-agent" tabindex="-1">Other ways to install Agent <a class="header-anchor" href="#other-ways-to-install-agent" aria-hidden="true">#</a></h2><br><h3 id="installing-agent-on-linux-ubuntu-debian-centos" tabindex="-1">Installing Agent on Linux (Ubuntu, Debian, CentOS) <a class="header-anchor" href="#installing-agent-on-linux-ubuntu-debian-centos" aria-hidden="true">#</a></h3><ul><li>First add a server in the admin panel</li><li>In the monitored server, run the script:</li></ul><div class="language-bash"><pre><code><span class="token function">curl</span> -L https://raw.githubusercontent.com/naiba/nezha/master/script/install_en.sh -o nezha.sh <span class="token operator">&&</span> <span class="token function">chmod</span> +x nezha.sh <span class="token operator">&&</span> <span class="token function">sudo</span> ./nezha.sh
|
|
||||||
</code></pre></div><ul><li><p>Select \u201CInstall_agent\u201D</p></li><li><p>Input the communication domain name, e.g. "<a href="http://data.example.com" target="_blank" rel="noopener noreferrer">data.example.com</a>"</p></li><li><p>Input RPC port, default is 5555</p></li><li><p>Input the Agent Secret, which is generated when adding a server in the administration panel and can be found in the " Servers " page of the administration panel</p></li><li><p>Wait for the installation to complete and return to the Dashboard home page to see if the server is online<br><br></p></li></ul><h3 id="installing-agent-on-other-linux-such-as-alpine-use-oprec-not-systemd" tabindex="-1">Installing Agent on other Linux (such as alpine use oprec not systemd) <a class="header-anchor" href="#installing-agent-on-other-linux-such-as-alpine-use-oprec-not-systemd" aria-hidden="true">#</a></h3><p>Contributed by <a href="https://github.com/unknwon0054" target="_blank" rel="noopener noreferrer">unknown0054</a></p><ul><li>Edit SERVER,SECRET,TLS then run it in Shell</li></ul><div class="language-shell"><pre><code><span class="token function">cat</span> <span class="token operator">></span>/etc/init.d/nezha-agent<span class="token operator"><<</span> <span class="token string">EOF
|
|
||||||
#!/sbin/openrc-run
|
|
||||||
SERVER="" #Dashboard address ip:port
|
|
||||||
SECRET="" #SECRET
|
|
||||||
TLS="" # Enable tls? yes:"--tls" no:""
|
|
||||||
NZ_BASE_PATH="/opt/nezha"
|
|
||||||
NZ_AGENT_PATH="<span class="token variable">\${NZ_BASE_PATH}</span>/agent"
|
|
||||||
pidfile="/run/<span class="token variable">\${RC_SVCNAME}</span>.pid"
|
|
||||||
command="/opt/nezha/agent/nezha-agent"
|
|
||||||
command_args="-s <span class="token variable">\${SERVER}</span> -p <span class="token variable">\${SECRET}</span> <span class="token variable">\${TLS}</span>"
|
|
||||||
command_background=true
|
|
||||||
depend() {
|
|
||||||
need net
|
|
||||||
}
|
|
||||||
checkconfig() {
|
|
||||||
GITHUB_URL="github.com"
|
|
||||||
if [ ! -f "<span class="token variable">\${NZ_AGENT_PATH}</span>/nezha-agent" ]; then
|
|
||||||
if [[ <span class="token variable"><span class="token variable">$(</span><span class="token function">uname</span> -m <span class="token operator">|</span> <span class="token function">grep</span> <span class="token string">'x86_64'</span><span class="token variable">)</span></span> != "" ]]; then
|
|
||||||
os_arch="amd64"
|
|
||||||
elif [[ <span class="token variable"><span class="token variable">$(</span><span class="token function">uname</span> -m <span class="token operator">|</span> <span class="token function">grep</span> <span class="token string">'i386\\|i686'</span><span class="token variable">)</span></span> != "" ]]; then
|
|
||||||
os_arch="386"
|
|
||||||
elif [[ <span class="token variable"><span class="token variable">$(</span><span class="token function">uname</span> -m <span class="token operator">|</span> <span class="token function">grep</span> <span class="token string">'aarch64\\|armv8b\\|armv8l'</span><span class="token variable">)</span></span> != "" ]]; then
|
|
||||||
os_arch="arm64"
|
|
||||||
elif [[ <span class="token variable"><span class="token variable">$(</span><span class="token function">uname</span> -m <span class="token operator">|</span> <span class="token function">grep</span> <span class="token string">'arm'</span><span class="token variable">)</span></span> != "" ]]; then
|
|
||||||
os_arch="arm"
|
|
||||||
elif [[ <span class="token variable"><span class="token variable">$(</span><span class="token function">uname</span> -m <span class="token operator">|</span> <span class="token function">grep</span> <span class="token string">'s390x'</span><span class="token variable">)</span></span> != "" ]]; then
|
|
||||||
os_arch="s390x"
|
|
||||||
elif [[ <span class="token variable"><span class="token variable">$(</span><span class="token function">uname</span> -m <span class="token operator">|</span> <span class="token function">grep</span> <span class="token string">'riscv64'</span><span class="token variable">)</span></span> != "" ]]; then
|
|
||||||
os_arch="riscv64"
|
|
||||||
fi
|
|
||||||
local version=<span class="token variable"><span class="token variable">$(</span><span class="token function">curl</span> -m <span class="token number">10</span> -sL <span class="token string">"https://api.github.com/repos/naiba/nezha/releases/latest"</span> <span class="token operator">|</span> <span class="token function">grep</span> <span class="token string">"tag_name"</span> <span class="token operator">|</span> <span class="token function">head</span> -n <span class="token number">1</span> <span class="token operator">|</span> <span class="token function">awk</span> -F <span class="token string">":"</span> <span class="token string">'{print $2}'</span> <span class="token operator">|</span> <span class="token function">sed</span> <span class="token string">'s/\\"//g;s/,//g;s/ //g'</span><span class="token variable">)</span></span>
|
|
||||||
if [ ! -n "<span class="token variable">$version</span>" ]; then
|
|
||||||
version=<span class="token variable"><span class="token variable">$(</span><span class="token function">curl</span> -m <span class="token number">10</span> -sL <span class="token string">"https://fastly.jsdelivr.net/gh/naiba/nezha/"</span> <span class="token operator">|</span> <span class="token function">grep</span> <span class="token string">"option\\.value"</span> <span class="token operator">|</span> <span class="token function">awk</span> -F <span class="token string">"'"</span> <span class="token string">'{print $2}'</span> <span class="token operator">|</span> <span class="token function">sed</span> <span class="token string">'s/naiba\\/nezha@/v/g'</span><span class="token variable">)</span></span>
|
|
||||||
fi
|
|
||||||
if [ ! -n "<span class="token variable">$version</span>" ]; then
|
|
||||||
version=<span class="token variable"><span class="token variable">$(</span><span class="token function">curl</span> -m <span class="token number">10</span> -sL <span class="token string">"https://gcore.jsdelivr.net/gh/naiba/nezha/"</span> <span class="token operator">|</span> <span class="token function">grep</span> <span class="token string">"option\\.value"</span> <span class="token operator">|</span> <span class="token function">awk</span> -F <span class="token string">"'"</span> <span class="token string">'{print $2}'</span> <span class="token operator">|</span> <span class="token function">sed</span> <span class="token string">'s/naiba\\/nezha@/v/g'</span><span class="token variable">)</span></span>
|
|
||||||
fi
|
|
||||||
if [ ! -n "<span class="token variable">$version</span>" ]; then
|
|
||||||
echo -e "Failed to get the version number, please check if the network can connect to https://api.github.com/repos/naiba/nezha/releases/latest"
|
|
||||||
return 0
|
|
||||||
else
|
|
||||||
echo -e "The current latest version is: <span class="token variable">\${version}</span>"
|
|
||||||
fi
|
|
||||||
wget -t 2 -T 10 -O nezha-agent_linux_<span class="token variable">\${os_arch}</span>.zip https://<span class="token variable">\${GITHUB_URL}</span>/naiba/nezha/releases/download/<span class="token variable">\${version}</span>/nezha-agent_linux_<span class="token variable">\${os_arch}</span>.zip >/dev/null 2>&1
|
|
||||||
if [[ <span class="token variable">$?</span> != 0 ]]; then
|
|
||||||
echo -e "Release download failed, please check if the network can connect to <span class="token variable">\${GITHUB_URL}</span><span class="token variable">\${plain}</span>"
|
|
||||||
return 0
|
|
||||||
fi
|
|
||||||
mkdir -p <span class="token variable">$NZ_AGENT_PATH</span>
|
|
||||||
chmod 755 -R <span class="token variable">$NZ_AGENT_PATH</span>
|
|
||||||
unzip -qo nezha-agent_linux_<span class="token variable">\${os_arch}</span>.zip && mv nezha-agent <span class="token variable">$NZ_AGENT_PATH</span> && rm -rf nezha-agent_linux_<span class="token variable">\${os_arch}</span>.zip README.md
|
|
||||||
fi
|
|
||||||
if [ ! -x "<span class="token variable">\${NZ_AGENT_PATH}</span>/nezha-agent" ]; then
|
|
||||||
chmod +x <span class="token variable">\${NZ_AGENT_PATH}</span>/nezha-agent
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
start_pre() {
|
|
||||||
if [ "<span class="token variable">\${RC_CMD}</span>" != "restart" ]; then
|
|
||||||
checkconfig || return <span class="token variable">$?</span>
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
EOF</span>
|
|
||||||
</code></pre></div><ul><li><p>Add execute permission</p><div class="language-shell"><pre><code><span class="token function">chmod</span> +x /etc/init.d/nezha-agent
|
|
||||||
</code></pre></div></li><li><p>Run Nezha-Agent</p><div class="language-shell"><pre><code>rc-service nezha-agent-hy start
|
|
||||||
</code></pre></div></li><li><p>Set self-start after boot</p><div class="language-shell"><pre><code>rc-update <span class="token function">add</span> nezha-agent
|
|
||||||
</code></pre></div></li></ul><h3 id="installing-agent-on-windows" tabindex="-1">Installing Agent on Windows <a class="header-anchor" href="#installing-agent-on-windows" aria-hidden="true">#</a></h3><ul><li>Please refer to the community article:<br><a href="https://nyko.me/2020/12/13/nezha-windows-client.html" target="_blank" rel="noopener noreferrer">\u54EA\u5412\u63A2\u9488 - Windows \u5BA2\u6237\u7AEF\u5B89\u88C5</a> (Chinese)<br><br></li></ul><h3 id="installing-agent-on-synology-dsm" tabindex="-1">Installing Agent on Synology DSM <a class="header-anchor" href="#installing-agent-on-synology-dsm" aria-hidden="true">#</a></h3><ul><li><p>Please refer to the community article:<br><a href="https://blog.mitsea.com/3929551d08bd4bb0a8baa453e2d92b0c/" target="_blank" rel="noopener noreferrer">\u7FA4\u6656 DSM 7.x \u5B89\u88C5 \u54EA\u5412\u76D1\u63A7 Agent</a> (Chinese)<br><a href="https://wl.gta5pdx.cn/archives/546/" target="_blank" rel="noopener noreferrer">\u54EA\u5412\u63A2\u9488\u2014\u2014\u7FA4\u6656\u5BA2\u6237\u7AEF\uFF08\u88AB\u63A7\u7AEF\uFF09\u5B89\u88C5\u6559\u7A0B</a> (Chinese)</p></li><li><p>Using Systemd <em>Only available on DSM7</em>:</p><div class="language-sh"><pre><code># Path of the agent binary file.
|
|
||||||
EXEC="/PATH/TO/nezha-agent"
|
|
||||||
# Path of the agent's log.
|
|
||||||
LOG="\${EXEC}.log"
|
|
||||||
# Extend arguments, can be blank.
|
|
||||||
ARGS="--disable-command-execute"
|
|
||||||
# The address of nezha server's GRPC.
|
|
||||||
SERVER="HOST_OR_IP:GRPC_PORT"
|
|
||||||
# The token of host.
|
|
||||||
SECRET="APP_SECRET"
|
|
||||||
# Specify \`run_as\` user. * Strongly suggest NOT use \`root\`! *
|
|
||||||
RUN_USER="nezha"
|
|
||||||
# Create the service file.
|
|
||||||
cat << EOF > /usr/lib/systemd/system/nezha.service
|
|
||||||
[Unit]
|
|
||||||
Description=Nezha Agent Service
|
|
||||||
After=network.target
|
|
||||||
[Service]
|
|
||||||
Type=simple
|
|
||||||
ExecStart=/bin/nohup \${EXEC} \${ARGS} -s \${SERVER} -p \${SECRET} &>> \${LOG} &
|
|
||||||
ExecStop=ps -fe |grep nezha-agent|awk '{print \\$2}'|xargs kill
|
|
||||||
User=\${RUN_USER}
|
|
||||||
Restart=on-abort
|
|
||||||
[Install]
|
|
||||||
WantedBy=multi-user.target
|
|
||||||
EOF
|
|
||||||
# Reload services
|
|
||||||
systemctl daemon-reload
|
|
||||||
# Start the agent service
|
|
||||||
systemctl start nezha
|
|
||||||
# Enable auto-start
|
|
||||||
systemctl enable nezha
|
|
||||||
</code></pre></div><p>\u203C\uFE0FDO IT WHEN YOU HAVE MODIFIED THE ENVS\u203C\uFE0F</p><p>Using <code>root</code> to execute command above, that's all.</p></li></ul><br><h3 id="installing-agent-on-macos" tabindex="-1">Installing Agent on MacOS <a class="header-anchor" href="#installing-agent-on-macos" aria-hidden="true">#</a></h3><p><em><strong>This section is adapted from <a href="https://blog.mitsea.com/e796f93db38d49e4b18df234c6ee75f5" target="_blank" rel="noopener noreferrer">Mitsea Blog</a>, with permission from the original author</strong></em><br><br></p><div class="warning custom-block"><p class="custom-block-title">WARNING</p><p>If you are prompted with "macOS cannot verify this app" during installation, please go to system settings to allow the app to run.</p></div><ul><li>First add a server in the admin panel</li><li>Go to the <a href="https://github.com/naiba/nezha/releases" target="_blank" rel="noopener noreferrer">Release</a> page to download the Agent binary and choose whether to download the darwin amd64 or arm64 Agent depending on the CPU architecture<br> For example, download the amd64 version for Intel CPU and the arm64 version for Apple Silicon. After downloading, extract the Agent binary file, e.g. to the Download folder</li><li>Create a new file named <code>nezha_agent.plist</code> and save it, edit the contents of the file:</li></ul><div class="language-xml"><pre><code><span class="token prolog"><?xml version="1.0" encoding="UTF-8"?></span>
|
|
||||||
<span class="token doctype"><span class="token punctuation"><!</span><span class="token doctype-tag">DOCTYPE</span> <span class="token name">plist</span> <span class="token name">PUBLIC</span> <span class="token string">"-//Apple//DTD PLIST 1.0//EN"</span> <span class="token string">"http://www.apple.com/DTDs/PropertyList-1.0.dtd"</span><span class="token punctuation">></span></span>
|
|
||||||
<span class="token tag"><span class="token tag"><span class="token punctuation"><</span>plist</span> <span class="token attr-name">version</span><span class="token attr-value"><span class="token punctuation attr-equals">=</span><span class="token punctuation">"</span>1.0<span class="token punctuation">"</span></span><span class="token punctuation">></span></span>
|
|
||||||
<span class="token tag"><span class="token tag"><span class="token punctuation"><</span>dict</span><span class="token punctuation">></span></span>
|
|
||||||
<span class="token tag"><span class="token tag"><span class="token punctuation"><</span>key</span><span class="token punctuation">></span></span>KeepAlive<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>key</span><span class="token punctuation">></span></span>
|
|
||||||
<span class="token tag"><span class="token tag"><span class="token punctuation"><</span>true</span><span class="token punctuation">/></span></span>
|
|
||||||
<span class="token tag"><span class="token tag"><span class="token punctuation"><</span>key</span><span class="token punctuation">></span></span>Label<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>key</span><span class="token punctuation">></span></span>
|
|
||||||
<span class="token tag"><span class="token tag"><span class="token punctuation"><</span>string</span><span class="token punctuation">></span></span>nezha_agent<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>string</span><span class="token punctuation">></span></span>
|
|
||||||
<span class="token tag"><span class="token tag"><span class="token punctuation"><</span>key</span><span class="token punctuation">></span></span>Program<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>key</span><span class="token punctuation">></span></span>
|
|
||||||
<span class="token tag"><span class="token tag"><span class="token punctuation"><</span>string</span><span class="token punctuation">></span></span>Change the path of the Agent binary here, e.g. /Users/123/Downloads/nezha-agent<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>string</span><span class="token punctuation">></span></span>
|
|
||||||
<span class="token tag"><span class="token tag"><span class="token punctuation"><</span>key</span><span class="token punctuation">></span></span>ProgramArguments<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>key</span><span class="token punctuation">></span></span>
|
|
||||||
<span class="token tag"><span class="token tag"><span class="token punctuation"><</span>array</span><span class="token punctuation">></span></span>
|
|
||||||
<span class="token tag"><span class="token tag"><span class="token punctuation"><</span>string</span><span class="token punctuation">></span></span>Change the path of the Agent binary here, e.g. /Users/123/Downloads/nezha-agent<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>string</span><span class="token punctuation">></span></span>
|
|
||||||
<span class="token tag"><span class="token tag"><span class="token punctuation"><</span>string</span><span class="token punctuation">></span></span>--password<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>string</span><span class="token punctuation">></span></span>
|
|
||||||
<span class="token tag"><span class="token tag"><span class="token punctuation"><</span>string</span><span class="token punctuation">></span></span>Communication Secret, eg: 529664783eeb23cc25<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>string</span><span class="token punctuation">></span></span>
|
|
||||||
<span class="token tag"><span class="token tag"><span class="token punctuation"><</span>string</span><span class="token punctuation">></span></span>--server<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>string</span><span class="token punctuation">></span></span>
|
|
||||||
<span class="token tag"><span class="token tag"><span class="token punctuation"><</span>string</span><span class="token punctuation">></span></span>Communication URL and RPC port, eg:data.example.com:5555<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>string</span><span class="token punctuation">></span></span>
|
|
||||||
<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>array</span><span class="token punctuation">></span></span>
|
|
||||||
<span class="token tag"><span class="token tag"><span class="token punctuation"><</span>key</span><span class="token punctuation">></span></span>RunAtLoad<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>key</span><span class="token punctuation">></span></span>
|
|
||||||
<span class="token tag"><span class="token tag"><span class="token punctuation"><</span>true</span><span class="token punctuation">/></span></span>
|
|
||||||
<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>dict</span><span class="token punctuation">></span></span>
|
|
||||||
<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>plist</span><span class="token punctuation">></span></span>
|
|
||||||
</code></pre></div><ul><li>Use the following command in Terminal to load the plist file into launchd<br><strong>Be sure to change the file path</strong></li></ul><div class="language-shell"><pre><code>launchctl load /Users/123/Desktop/nezha_agent.plist
|
|
||||||
</code></pre></div><ul><li>Start Service</li></ul><div class="language-shell"><pre><code>launchctl start nezha_agent
|
|
||||||
</code></pre></div><ul><li>Check if the service is running</li></ul><div class="language-shell"><pre><code>launchctl list <span class="token operator">|</span> <span class="token function">grep</span> nezha_agent
|
|
||||||
</code></pre></div><ul><li>Stop service and remove</li></ul><div class="language-shell"><pre><code>launchctl stop nezha_agent
|
|
||||||
</code></pre></div><div class="language-shell"><pre><code>launchctl remove nezha_agent
|
|
||||||
</code></pre></div><br><h3 id="installing-agent-on-openwrt" tabindex="-1">Installing Agent on OpenWRT <a class="header-anchor" href="#installing-agent-on-openwrt" aria-hidden="true">#</a></h3><p><strong>How to solve various problems during the installation process in one step</strong></p><ul><li>Please refer to the project:<br><a href="https://github.com/dysf888/NZ-OpenWrt" target="_blank" rel="noopener noreferrer">NZ-OpenWrt</a> (Chinese) <br></li></ul><p><strong>How to make the old version of OpenWRT/LEDE self-boot?</strong></p><ul><li>Please refer to the project:<br><a href="https://github.com/Erope/openwrt_nezha" target="_blank" rel="noopener noreferrer">\u54EA\u5412\u76D1\u63A7 For OpenWRT</a> (Chinese) <br></li></ul><p><strong>How to make the new version of OpenWRT self-boot? By @\u827E\u65AF\u5FB7\u65AF</strong></p><ul><li>First download the corresponding binary from the release, unzip the zip package and place it in <code>/root</code></li><li>Then run <code>chmod +x /root/nezha-agent</code> to give it execute access, create file <code>/etc/init.d/nezha-service</code>\uFF1A</li></ul><div class="language-shell"><pre><code><span class="token shebang important">#!/bin/sh /etc/rc.common</span>
|
|
||||||
|
|
||||||
<span class="token assign-left variable">START</span><span class="token operator">=</span><span class="token number">99</span>
|
|
||||||
<span class="token assign-left variable">USE_PROCD</span><span class="token operator">=</span><span class="token number">1</span>
|
|
||||||
|
|
||||||
<span class="token function-name function">start_service</span><span class="token punctuation">(</span><span class="token punctuation">)</span> <span class="token punctuation">{</span>
|
|
||||||
procd_open_instance
|
|
||||||
procd_set_param <span class="token builtin class-name">command</span> /root/nezha-agent -s data.example.com:5555 -p secreat -d
|
|
||||||
procd_set_param respawn
|
|
||||||
procd_close_instance
|
|
||||||
<span class="token punctuation">}</span>
|
|
||||||
|
|
||||||
<span class="token function-name function">stop_service</span><span class="token punctuation">(</span><span class="token punctuation">)</span> <span class="token punctuation">{</span>
|
|
||||||
<span class="token function">killall</span> nezha-agent
|
|
||||||
<span class="token punctuation">}</span>
|
|
||||||
|
|
||||||
<span class="token function-name function">restart</span><span class="token punctuation">(</span><span class="token punctuation">)</span> <span class="token punctuation">{</span>
|
|
||||||
stop
|
|
||||||
<span class="token function">sleep</span> <span class="token number">2</span>
|
|
||||||
start
|
|
||||||
<span class="token punctuation">}</span>
|
|
||||||
</code></pre></div><ul><li>Give it permission to execute: <code>chmod +x /etc/init.d/nezha-service</code></li><li>Start the service <code>/etc/init.d/nezha-service enable && /etc/init.d/nezha-service start</code><br><br></li></ul><h2 id="faq" tabindex="-1">FAQ <a class="header-anchor" href="#faq" aria-hidden="true">#</a></h2><h3 id="is-there-a-docker-image-for-agent" tabindex="-1">Is there a Docker image for Agent? <a class="header-anchor" href="#is-there-a-docker-image-for-agent" aria-hidden="true">#</a></h3><p><strong>There is currently no Docker image for Agent.</strong><br> The Agent is designed to be the opposite of the Dashboard, in that the Dashboard is designed to work without affecting the server as much as possible, while the Agent needs to execute monitoring services and run commands in the server.<br> Putting the Agent in a container does continue to execute monitoring services, but features such as WebShell do not work, so we do not provide Docker image of the Agent.</p>`,52),p=[o];function l(i,c,r,u,g,h){return t(),a("div",null,p)}var m=n(e,[["render",l]]);export{k as __pageData,m as default};
|
|
@ -1 +0,0 @@
|
|||||||
import{_ as n,c as a,o as t,a as s}from"./app.38e99b9a.js";const k='{"title":"Install Agent using one-click script","description":"","frontmatter":{},"headers":[{"level":2,"title":"Install Agent using one-click script","slug":"install-agent-using-one-click-script"},{"level":3,"title":"Preparation","slug":"preparation"},{"level":3,"title":"One-click installation on Linux (Ubuntu, Debian, CentOS)","slug":"one-click-installation-on-linux-ubuntu-debian-centos"},{"level":3,"title":"One-click installation on Windows","slug":"one-click-installation-on-windows"},{"level":2,"title":"Other ways to install Agent","slug":"other-ways-to-install-agent"},{"level":3,"title":"Installing Agent on Linux (Ubuntu, Debian, CentOS)","slug":"installing-agent-on-linux-ubuntu-debian-centos"},{"level":3,"title":"Installing Agent on other Linux (such as alpine use oprec not systemd)","slug":"installing-agent-on-other-linux-such-as-alpine-use-oprec-not-systemd"},{"level":3,"title":"Installing Agent on Windows","slug":"installing-agent-on-windows"},{"level":3,"title":"Installing Agent on Synology DSM","slug":"installing-agent-on-synology-dsm"},{"level":3,"title":"Installing Agent on MacOS","slug":"installing-agent-on-macos"},{"level":3,"title":"Installing Agent on OpenWRT","slug":"installing-agent-on-openwrt"},{"level":2,"title":"FAQ","slug":"faq"},{"level":3,"title":"Is there a Docker image for Agent?","slug":"is-there-a-docker-image-for-agent"}],"relativePath":"en_US/guide/agent.md","lastUpdated":1682159272000}',e={},o=s("",52),p=[o];function l(i,c,r,u,g,h){return t(),a("div",null,p)}var m=n(e,[["render",l]]);export{k as __pageData,m as default};
|
|
134
assets/en_US_guide_agent.md.ec3cceee.js
Normal file
134
assets/en_US_guide_agent.md.ec3cceee.js
Normal file
File diff suppressed because one or more lines are too long
1
assets/en_US_guide_agent.md.ec3cceee.lean.js
Normal file
1
assets/en_US_guide_agent.md.ec3cceee.lean.js
Normal file
@ -0,0 +1 @@
|
|||||||
|
import{_ as s,o as n,c as a,R as l}from"./chunks/framework.1625126e.js";const h=JSON.parse('{"title":"","description":"","frontmatter":{},"headers":[],"relativePath":"en_US/guide/agent.md","filePath":"en_US/guide/agent.md","lastUpdated":1687190167000}'),o={name:"en_US/guide/agent.md"},e=l("",52),p=[e];function t(r,c,i,D,y,C){return n(),a("div",null,p)}const u=s(o,[["render",t]]);export{h as __pageData,u as default};
|
1
assets/en_US_guide_agentq.md.79461295.js
Normal file
1
assets/en_US_guide_agentq.md.79461295.js
Normal file
@ -0,0 +1 @@
|
|||||||
|
import{_ as e,o as a,c as t,R as n}from"./chunks/framework.1625126e.js";const _=JSON.parse('{"title":"","description":"","frontmatter":{},"headers":[],"relativePath":"en_US/guide/agentq.md","filePath":"en_US/guide/agentq.md","lastUpdated":1687190167000}'),o={name:"en_US/guide/agentq.md"},i=n('<h2 id="why-the-ip-displayed-in-the-admin-panel-and-the-actual-ip-of-the-agent-are-not-the-same" tabindex="-1">Why the IP displayed in the admin panel and the actual IP of the Agent are not the same? <a class="header-anchor" href="#why-the-ip-displayed-in-the-admin-panel-and-the-actual-ip-of-the-agent-are-not-the-same" aria-label="Permalink to "Why the IP displayed in the admin panel and the actual IP of the Agent are not the same?""></a></h2><p>Please check <a href="/en_US/guide/dashboardq.html#why-the-ip-displayed-in-the-admin-panel-and-the-actual-ip-of-the-agent-are-not-the-same">Dashboard - Why the IP displayed in the admin panel and the actual IP of the Agent are not the same?</a></p><h2 id="error-on-one-click-script-installation" tabindex="-1">Error on one-click script installation <a class="header-anchor" href="#error-on-one-click-script-installation" aria-label="Permalink to "Error on one-click script installation""></a></h2><h3 id="curl-failed-to-connect-to-raw-githubusercontent-com" tabindex="-1">curl: Failed to connect to raw.githubusercontent.com... <a class="header-anchor" href="#curl-failed-to-connect-to-raw-githubusercontent-com" aria-label="Permalink to "curl: Failed to connect to raw.githubusercontent.com...""></a></h3><p>Please check if your server can connect to Github, try again, or check <a href="/en_US/guide/agent.html#other-ways-to-install-agent">Other ways to install Agent</a></p><h3 id="sudo-command-not-found" tabindex="-1">sudo: command not found <a class="header-anchor" href="#sudo-command-not-found" aria-label="Permalink to "sudo: command not found""></a></h3><p>Please install sudo first</p>',7),r=[i];function c(h,d,l,s,u,p){return a(),t("div",null,r)}const f=e(o,[["render",c]]);export{_ as __pageData,f as default};
|
1
assets/en_US_guide_agentq.md.79461295.lean.js
Normal file
1
assets/en_US_guide_agentq.md.79461295.lean.js
Normal file
@ -0,0 +1 @@
|
|||||||
|
import{_ as e,o as a,c as t,R as n}from"./chunks/framework.1625126e.js";const _=JSON.parse('{"title":"","description":"","frontmatter":{},"headers":[],"relativePath":"en_US/guide/agentq.md","filePath":"en_US/guide/agentq.md","lastUpdated":1687190167000}'),o={name:"en_US/guide/agentq.md"},i=n("",7),r=[i];function c(h,d,l,s,u,p){return a(),t("div",null,r)}const f=e(o,[["render",c]]);export{_ as __pageData,f as default};
|
@ -1 +0,0 @@
|
|||||||
import{_ as e,c as t,o as a,a as n}from"./app.38e99b9a.js";const f='{"title":"Why the IP displayed in the admin panel and the actual IP of the Agent are not the same?","description":"","frontmatter":{},"headers":[{"level":2,"title":"Why the IP displayed in the admin panel and the actual IP of the Agent are not the same?","slug":"why-the-ip-displayed-in-the-admin-panel-and-the-actual-ip-of-the-agent-are-not-the-same"},{"level":2,"title":"Error on one-click script installation","slug":"error-on-one-click-script-installation"},{"level":3,"title":"curl: Failed to connect to raw.githubusercontent.com...","slug":"curl-failed-to-connect-to-raw-githubusercontent-com"},{"level":3,"title":"sudo: command not found","slug":"sudo-command-not-found"}],"relativePath":"en_US/guide/agentq.md","lastUpdated":1682159272000}',o={},i=n('<h2 id="why-the-ip-displayed-in-the-admin-panel-and-the-actual-ip-of-the-agent-are-not-the-same" tabindex="-1">Why the IP displayed in the admin panel and the actual IP of the Agent are not the same? <a class="header-anchor" href="#why-the-ip-displayed-in-the-admin-panel-and-the-actual-ip-of-the-agent-are-not-the-same" aria-hidden="true">#</a></h2><p>Please check <a href="/en_US/guide/dashboardq.html#why-the-ip-displayed-in-the-admin-panel-and-the-actual-ip-of-the-agent-are-not-the-same">Dashboard - Why the IP displayed in the admin panel and the actual IP of the Agent are not the same?</a></p><h2 id="error-on-one-click-script-installation" tabindex="-1">Error on one-click script installation <a class="header-anchor" href="#error-on-one-click-script-installation" aria-hidden="true">#</a></h2><h3 id="curl-failed-to-connect-to-raw-githubusercontent-com" tabindex="-1">curl: Failed to connect to <a href="http://raw.githubusercontent.com" target="_blank" rel="noopener noreferrer">raw.githubusercontent.com</a>... <a class="header-anchor" href="#curl-failed-to-connect-to-raw-githubusercontent-com" aria-hidden="true">#</a></h3><p>Please check if your server can connect to Github, try again, or check <a href="/en_US/guide/agent.html#other-ways-to-install-agent">Other ways to install Agent</a></p><h3 id="sudo-command-not-found" tabindex="-1">sudo: command not found <a class="header-anchor" href="#sudo-command-not-found" aria-hidden="true">#</a></h3><p>Please install sudo first</p>',7),r=[i];function h(d,l,c,s,u,p){return a(),t("div",null,r)}var _=e(o,[["render",h]]);export{f as __pageData,_ as default};
|
|
@ -1 +0,0 @@
|
|||||||
import{_ as e,c as t,o as a,a as n}from"./app.38e99b9a.js";const f='{"title":"Why the IP displayed in the admin panel and the actual IP of the Agent are not the same?","description":"","frontmatter":{},"headers":[{"level":2,"title":"Why the IP displayed in the admin panel and the actual IP of the Agent are not the same?","slug":"why-the-ip-displayed-in-the-admin-panel-and-the-actual-ip-of-the-agent-are-not-the-same"},{"level":2,"title":"Error on one-click script installation","slug":"error-on-one-click-script-installation"},{"level":3,"title":"curl: Failed to connect to raw.githubusercontent.com...","slug":"curl-failed-to-connect-to-raw-githubusercontent-com"},{"level":3,"title":"sudo: command not found","slug":"sudo-command-not-found"}],"relativePath":"en_US/guide/agentq.md","lastUpdated":1682159272000}',o={},i=n("",7),r=[i];function h(d,l,c,s,u,p){return a(),t("div",null,r)}var _=e(o,[["render",h]]);export{f as __pageData,_ as default};
|
|
110
assets/en_US_guide_api.md.23c9cbfd.js
Normal file
110
assets/en_US_guide_api.md.23c9cbfd.js
Normal file
@ -0,0 +1,110 @@
|
|||||||
|
import{_ as s,o as n,c as a,R as o}from"./chunks/framework.1625126e.js";const y=JSON.parse('{"title":"","description":"","frontmatter":{},"headers":[],"relativePath":"en_US/guide/api.md","filePath":"en_US/guide/api.md","lastUpdated":1687190167000}'),t={name:"en_US/guide/api.md"},e=o(`<p><strong>Nezha Monitoring now supports querying the status information of the Agent in the Dashboard using the API</strong></p><h2 id="create-token" tabindex="-1">Create Token <a class="header-anchor" href="#create-token" aria-label="Permalink to "Create Token""></a></h2><p>API allows Token authentication method and Cookies authentication method<br> To create a new Token, after entering the admin panel, click on the avatar in the upper right corner and select "API Token" to enter the Token management page<br> Click "Add Token" and after customizing the notes, click "Add"<br> To delete a Token, please select the corresponding Token and click the delete icon on the right</p><div class="warning custom-block"><p class="custom-block-title">WARNING</p><p>Token is the authentication tool of API, it is very important for your Dashboard's information security, please don't leak your Token to others</p></div><h2 id="authentication-method" tabindex="-1">Authentication method <a class="header-anchor" href="#authentication-method" aria-label="Permalink to "Authentication method""></a></h2><p>Token authentication method:</p><div class="language-"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki material-theme-palenight"><code><span class="line"><span style="color:#A6ACCD;">Request Headers: </span></span>
|
||||||
|
<span class="line"><span style="color:#A6ACCD;">Authorization: Token</span></span></code></pre></div><h2 id="how-to-use" tabindex="-1">How to use <a class="header-anchor" href="#how-to-use" aria-label="Permalink to "How to use""></a></h2><div class="warning custom-block"><p class="custom-block-title">WARNING</p><p>The negative timestamp in the example below is (0000-00-00)<br> It is currently used to indicate that the Agent has never reported since the Dashboard went live<br> However, it is not recommended to use positivity or negativity to determine the status</p></div><div class="tip custom-block"><p class="custom-block-title">TIP</p><p><strong>The request method is <code>Get</code> and the return format is <code>JSON</code>.</strong></p></div><ul><li>Get a list of servers: <code>GET /api/v1/server/list?tag=</code><br> query: tag (ServerTag means the group of servers, if this value is provided, only the servers in this group are queried)</li></ul><p>JSON Return Example:</p><div class="language-"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki material-theme-palenight"><code><span class="line"><span style="color:#A6ACCD;">{</span></span>
|
||||||
|
<span class="line"><span style="color:#A6ACCD;"> "code": 0,</span></span>
|
||||||
|
<span class="line"><span style="color:#A6ACCD;"> "message": "success",</span></span>
|
||||||
|
<span class="line"><span style="color:#A6ACCD;"> "result": [</span></span>
|
||||||
|
<span class="line"><span style="color:#A6ACCD;"> {</span></span>
|
||||||
|
<span class="line"><span style="color:#A6ACCD;"> "id": 1,</span></span>
|
||||||
|
<span class="line"><span style="color:#A6ACCD;"> "name": "Server1",</span></span>
|
||||||
|
<span class="line"><span style="color:#A6ACCD;"> "tag": "Tag1",</span></span>
|
||||||
|
<span class="line"><span style="color:#A6ACCD;"> "last_active": 1653014667,</span></span>
|
||||||
|
<span class="line"><span style="color:#A6ACCD;"> "ipv4": "1.1.1.1",</span></span>
|
||||||
|
<span class="line"><span style="color:#A6ACCD;"> "ipv6": "",</span></span>
|
||||||
|
<span class="line"><span style="color:#A6ACCD;"> "valid_ip": "1.1.1.1"</span></span>
|
||||||
|
<span class="line"><span style="color:#A6ACCD;"> },</span></span>
|
||||||
|
<span class="line"><span style="color:#A6ACCD;"> {</span></span>
|
||||||
|
<span class="line"><span style="color:#A6ACCD;"> "id": 2,</span></span>
|
||||||
|
<span class="line"><span style="color:#A6ACCD;"> "name": "Server2",</span></span>
|
||||||
|
<span class="line"><span style="color:#A6ACCD;"> "tag": "Tag2",</span></span>
|
||||||
|
<span class="line"><span style="color:#A6ACCD;"> "last_active": -62135596800,</span></span>
|
||||||
|
<span class="line"><span style="color:#A6ACCD;"> "ipv4": "",</span></span>
|
||||||
|
<span class="line"><span style="color:#A6ACCD;"> "ipv6": "",</span></span>
|
||||||
|
<span class="line"><span style="color:#A6ACCD;"> "valid_ip": ""</span></span>
|
||||||
|
<span class="line"><span style="color:#A6ACCD;"> }</span></span>
|
||||||
|
<span class="line"><span style="color:#A6ACCD;"> ]</span></span>
|
||||||
|
<span class="line"><span style="color:#A6ACCD;">}</span></span></code></pre></div><ul><li>Get server details: <code>GET /api/v1/server/details?id=&tag=</code><br> query: id (ServerID. Multiple IDs are separated by commas, provide this value to query the server corresponding to the ID, while ignoring the tag value)<br> query: tag (ServerTag, if this value is provided, only the servers in this group are queried)</li></ul><p>JSON Return Example:</p><div class="language-"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki material-theme-palenight"><code><span class="line"><span style="color:#A6ACCD;">{</span></span>
|
||||||
|
<span class="line"><span style="color:#A6ACCD;"> "code": 0,</span></span>
|
||||||
|
<span class="line"><span style="color:#A6ACCD;"> "message": "success",</span></span>
|
||||||
|
<span class="line"><span style="color:#A6ACCD;"> "result": [</span></span>
|
||||||
|
<span class="line"><span style="color:#A6ACCD;"> {</span></span>
|
||||||
|
<span class="line"><span style="color:#A6ACCD;"> "id": 1,</span></span>
|
||||||
|
<span class="line"><span style="color:#A6ACCD;"> "name": "Server1",</span></span>
|
||||||
|
<span class="line"><span style="color:#A6ACCD;"> "tag": "Tag1",</span></span>
|
||||||
|
<span class="line"><span style="color:#A6ACCD;"> "last_active": 1653015042,</span></span>
|
||||||
|
<span class="line"><span style="color:#A6ACCD;"> "ipv4": "1.1.1.1",</span></span>
|
||||||
|
<span class="line"><span style="color:#A6ACCD;"> "ipv6": "",</span></span>
|
||||||
|
<span class="line"><span style="color:#A6ACCD;"> "valid_ip": "1.1.1.1",</span></span>
|
||||||
|
<span class="line"><span style="color:#A6ACCD;"> "host": {</span></span>
|
||||||
|
<span class="line"><span style="color:#A6ACCD;"> "Platform": "darwin",</span></span>
|
||||||
|
<span class="line"><span style="color:#A6ACCD;"> "PlatformVersion": "12.3.1",</span></span>
|
||||||
|
<span class="line"><span style="color:#A6ACCD;"> "CPU": [</span></span>
|
||||||
|
<span class="line"><span style="color:#A6ACCD;"> "Apple M1 Pro 1 Physical Core"</span></span>
|
||||||
|
<span class="line"><span style="color:#A6ACCD;"> ],</span></span>
|
||||||
|
<span class="line"><span style="color:#A6ACCD;"> "MemTotal": 17179869184,</span></span>
|
||||||
|
<span class="line"><span style="color:#A6ACCD;"> "DiskTotal": 2473496842240,</span></span>
|
||||||
|
<span class="line"><span style="color:#A6ACCD;"> "SwapTotal": 0,</span></span>
|
||||||
|
<span class="line"><span style="color:#A6ACCD;"> "Arch": "arm64",</span></span>
|
||||||
|
<span class="line"><span style="color:#A6ACCD;"> "Virtualization": "",</span></span>
|
||||||
|
<span class="line"><span style="color:#A6ACCD;"> "BootTime": 1652683962,</span></span>
|
||||||
|
<span class="line"><span style="color:#A6ACCD;"> "CountryCode": "hk",</span></span>
|
||||||
|
<span class="line"><span style="color:#A6ACCD;"> "Version": ""</span></span>
|
||||||
|
<span class="line"><span style="color:#A6ACCD;"> },</span></span>
|
||||||
|
<span class="line"><span style="color:#A6ACCD;"> "status": {</span></span>
|
||||||
|
<span class="line"><span style="color:#A6ACCD;"> "CPU": 17.330210772540017,</span></span>
|
||||||
|
<span class="line"><span style="color:#A6ACCD;"> "MemUsed": 14013841408,</span></span>
|
||||||
|
<span class="line"><span style="color:#A6ACCD;"> "SwapUsed": 0,</span></span>
|
||||||
|
<span class="line"><span style="color:#A6ACCD;"> "DiskUsed": 2335048912896,</span></span>
|
||||||
|
<span class="line"><span style="color:#A6ACCD;"> "NetInTransfer": 2710273234,</span></span>
|
||||||
|
<span class="line"><span style="color:#A6ACCD;"> "NetOutTransfer": 695454765,</span></span>
|
||||||
|
<span class="line"><span style="color:#A6ACCD;"> "NetInSpeed": 10806,</span></span>
|
||||||
|
<span class="line"><span style="color:#A6ACCD;"> "NetOutSpeed": 5303,</span></span>
|
||||||
|
<span class="line"><span style="color:#A6ACCD;"> "Uptime": 331080,</span></span>
|
||||||
|
<span class="line"><span style="color:#A6ACCD;"> "Load1": 5.23486328125,</span></span>
|
||||||
|
<span class="line"><span style="color:#A6ACCD;"> "Load5": 4.873046875,</span></span>
|
||||||
|
<span class="line"><span style="color:#A6ACCD;"> "Load15": 3.99267578125,</span></span>
|
||||||
|
<span class="line"><span style="color:#A6ACCD;"> "TcpConnCount": 195,</span></span>
|
||||||
|
<span class="line"><span style="color:#A6ACCD;"> "UdpConnCount": 70,</span></span>
|
||||||
|
<span class="line"><span style="color:#A6ACCD;"> "ProcessCount": 437</span></span>
|
||||||
|
<span class="line"><span style="color:#A6ACCD;"> }</span></span>
|
||||||
|
<span class="line"><span style="color:#A6ACCD;"> },</span></span>
|
||||||
|
<span class="line"><span style="color:#A6ACCD;"> {</span></span>
|
||||||
|
<span class="line"><span style="color:#A6ACCD;"> "id": 2,</span></span>
|
||||||
|
<span class="line"><span style="color:#A6ACCD;"> "name": "Server2",</span></span>
|
||||||
|
<span class="line"><span style="color:#A6ACCD;"> "tag": "Tag2",</span></span>
|
||||||
|
<span class="line"><span style="color:#A6ACCD;"> "last_active": -62135596800,</span></span>
|
||||||
|
<span class="line"><span style="color:#A6ACCD;"> "ipv4": "",</span></span>
|
||||||
|
<span class="line"><span style="color:#A6ACCD;"> "ipv6": "",</span></span>
|
||||||
|
<span class="line"><span style="color:#A6ACCD;"> "valid_ip": "",</span></span>
|
||||||
|
<span class="line"><span style="color:#A6ACCD;"> "host": {</span></span>
|
||||||
|
<span class="line"><span style="color:#A6ACCD;"> "Platform": "",</span></span>
|
||||||
|
<span class="line"><span style="color:#A6ACCD;"> "PlatformVersion": "",</span></span>
|
||||||
|
<span class="line"><span style="color:#A6ACCD;"> "CPU": null,</span></span>
|
||||||
|
<span class="line"><span style="color:#A6ACCD;"> "MemTotal": 0,</span></span>
|
||||||
|
<span class="line"><span style="color:#A6ACCD;"> "DiskTotal": 0,</span></span>
|
||||||
|
<span class="line"><span style="color:#A6ACCD;"> "SwapTotal": 0,</span></span>
|
||||||
|
<span class="line"><span style="color:#A6ACCD;"> "Arch": "",</span></span>
|
||||||
|
<span class="line"><span style="color:#A6ACCD;"> "Virtualization": "",</span></span>
|
||||||
|
<span class="line"><span style="color:#A6ACCD;"> "BootTime": 0,</span></span>
|
||||||
|
<span class="line"><span style="color:#A6ACCD;"> "CountryCode": "",</span></span>
|
||||||
|
<span class="line"><span style="color:#A6ACCD;"> "Version": ""</span></span>
|
||||||
|
<span class="line"><span style="color:#A6ACCD;"> },</span></span>
|
||||||
|
<span class="line"><span style="color:#A6ACCD;"> "status": {</span></span>
|
||||||
|
<span class="line"><span style="color:#A6ACCD;"> "CPU": 0,</span></span>
|
||||||
|
<span class="line"><span style="color:#A6ACCD;"> "MemUsed": 0,</span></span>
|
||||||
|
<span class="line"><span style="color:#A6ACCD;"> "SwapUsed": 0,</span></span>
|
||||||
|
<span class="line"><span style="color:#A6ACCD;"> "DiskUsed": 0,</span></span>
|
||||||
|
<span class="line"><span style="color:#A6ACCD;"> "NetInTransfer": 0,</span></span>
|
||||||
|
<span class="line"><span style="color:#A6ACCD;"> "NetOutTransfer": 0,</span></span>
|
||||||
|
<span class="line"><span style="color:#A6ACCD;"> "NetInSpeed": 0,</span></span>
|
||||||
|
<span class="line"><span style="color:#A6ACCD;"> "NetOutSpeed": 0,</span></span>
|
||||||
|
<span class="line"><span style="color:#A6ACCD;"> "Uptime": 0,</span></span>
|
||||||
|
<span class="line"><span style="color:#A6ACCD;"> "Load1": 0,</span></span>
|
||||||
|
<span class="line"><span style="color:#A6ACCD;"> "Load5": 0,</span></span>
|
||||||
|
<span class="line"><span style="color:#A6ACCD;"> "Load15": 0,</span></span>
|
||||||
|
<span class="line"><span style="color:#A6ACCD;"> "TcpConnCount": 0,</span></span>
|
||||||
|
<span class="line"><span style="color:#A6ACCD;"> "UdpConnCount": 0,</span></span>
|
||||||
|
<span class="line"><span style="color:#A6ACCD;"> "ProcessCount": 0</span></span>
|
||||||
|
<span class="line"><span style="color:#A6ACCD;"> }</span></span>
|
||||||
|
<span class="line"><span style="color:#A6ACCD;"> }</span></span>
|
||||||
|
<span class="line"><span style="color:#A6ACCD;"> ]</span></span>
|
||||||
|
<span class="line"><span style="color:#A6ACCD;">}</span></span></code></pre></div>`,16),l=[e];function p(u,c,i,r,q,C){return n(),a("div",null,l)}const d=s(t,[["render",p]]);export{y as __pageData,d as default};
|
1
assets/en_US_guide_api.md.23c9cbfd.lean.js
Normal file
1
assets/en_US_guide_api.md.23c9cbfd.lean.js
Normal file
@ -0,0 +1 @@
|
|||||||
|
import{_ as s,o as n,c as a,R as o}from"./chunks/framework.1625126e.js";const y=JSON.parse('{"title":"","description":"","frontmatter":{},"headers":[],"relativePath":"en_US/guide/api.md","filePath":"en_US/guide/api.md","lastUpdated":1687190167000}'),t={name:"en_US/guide/api.md"},e=o("",16),l=[e];function p(u,c,i,r,q,C){return n(),a("div",null,l)}const d=s(t,[["render",p]]);export{y as __pageData,d as default};
|
@ -1,113 +0,0 @@
|
|||||||
import{_ as t,c as o,o as e,a as u}from"./app.38e99b9a.js";const v='{"title":"Create Token","description":"","frontmatter":{},"headers":[{"level":2,"title":"Create Token","slug":"create-token"},{"level":2,"title":"Authentication method","slug":"authentication-method"},{"level":2,"title":"How to use","slug":"how-to-use"}],"relativePath":"en_US/guide/api.md","lastUpdated":1682159272000}',n={},q=u(`<p><strong>Nezha Monitoring now supports querying the status information of the Agent in the Dashboard using the API</strong></p><h2 id="create-token" tabindex="-1">Create Token <a class="header-anchor" href="#create-token" aria-hidden="true">#</a></h2><p>API allows Token authentication method and Cookies authentication method<br> To create a new Token, after entering the admin panel, click on the avatar in the upper right corner and select "API Token" to enter the Token management page<br> Click "Add Token" and after customizing the notes, click "Add"<br> To delete a Token, please select the corresponding Token and click the delete icon on the right</p><div class="warning custom-block"><p class="custom-block-title">WARNING</p><p>Token is the authentication tool of API, it is very important for your Dashboard's information security, please don't leak your Token to others</p></div><h2 id="authentication-method" tabindex="-1">Authentication method <a class="header-anchor" href="#authentication-method" aria-hidden="true">#</a></h2><p>Token authentication method:</p><div class="language-"><pre><code>Request Headers:
|
|
||||||
Authorization: Token
|
|
||||||
</code></pre></div><h2 id="how-to-use" tabindex="-1">How to use <a class="header-anchor" href="#how-to-use" aria-hidden="true">#</a></h2><div class="warning custom-block"><p class="custom-block-title">WARNING</p><p>The negative timestamp in the example below is (0000-00-00)<br> It is currently used to indicate that the Agent has never reported since the Dashboard went live<br> However, it is not recommended to use positivity or negativity to determine the status</p></div><div class="tip custom-block"><p class="custom-block-title">TIP</p><p><strong>The request method is <code>Get</code> and the return format is <code>JSON</code>.</strong></p></div><ul><li>Get a list of servers: <code>GET /api/v1/server/list?tag=</code><br> query: tag (ServerTag means the group of servers, if this value is provided, only the servers in this group are queried)</li></ul><p>JSON Return Example:</p><div class="language-"><pre><code>{
|
|
||||||
"code": 0,
|
|
||||||
"message": "success",
|
|
||||||
"result": [
|
|
||||||
{
|
|
||||||
"id": 1,
|
|
||||||
"name": "Server1",
|
|
||||||
"tag": "Tag1",
|
|
||||||
"last_active": 1653014667,
|
|
||||||
"ipv4": "1.1.1.1",
|
|
||||||
"ipv6": "",
|
|
||||||
"valid_ip": "1.1.1.1"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id": 2,
|
|
||||||
"name": "Server2",
|
|
||||||
"tag": "Tag2",
|
|
||||||
"last_active": -62135596800,
|
|
||||||
"ipv4": "",
|
|
||||||
"ipv6": "",
|
|
||||||
"valid_ip": ""
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
|
||||||
</code></pre></div><ul><li>Get server details: <code>GET /api/v1/server/details?id=&tag=</code><br> query: id (ServerID. Multiple IDs are separated by commas, provide this value to query the server corresponding to the ID, while ignoring the tag value)<br> query: tag (ServerTag, if this value is provided, only the servers in this group are queried)</li></ul><p>JSON Return Example:</p><div class="language-"><pre><code>{
|
|
||||||
"code": 0,
|
|
||||||
"message": "success",
|
|
||||||
"result": [
|
|
||||||
{
|
|
||||||
"id": 1,
|
|
||||||
"name": "Server1",
|
|
||||||
"tag": "Tag1",
|
|
||||||
"last_active": 1653015042,
|
|
||||||
"ipv4": "1.1.1.1",
|
|
||||||
"ipv6": "",
|
|
||||||
"valid_ip": "1.1.1.1",
|
|
||||||
"host": {
|
|
||||||
"Platform": "darwin",
|
|
||||||
"PlatformVersion": "12.3.1",
|
|
||||||
"CPU": [
|
|
||||||
"Apple M1 Pro 1 Physical Core"
|
|
||||||
],
|
|
||||||
"MemTotal": 17179869184,
|
|
||||||
"DiskTotal": 2473496842240,
|
|
||||||
"SwapTotal": 0,
|
|
||||||
"Arch": "arm64",
|
|
||||||
"Virtualization": "",
|
|
||||||
"BootTime": 1652683962,
|
|
||||||
"CountryCode": "hk",
|
|
||||||
"Version": ""
|
|
||||||
},
|
|
||||||
"status": {
|
|
||||||
"CPU": 17.330210772540017,
|
|
||||||
"MemUsed": 14013841408,
|
|
||||||
"SwapUsed": 0,
|
|
||||||
"DiskUsed": 2335048912896,
|
|
||||||
"NetInTransfer": 2710273234,
|
|
||||||
"NetOutTransfer": 695454765,
|
|
||||||
"NetInSpeed": 10806,
|
|
||||||
"NetOutSpeed": 5303,
|
|
||||||
"Uptime": 331080,
|
|
||||||
"Load1": 5.23486328125,
|
|
||||||
"Load5": 4.873046875,
|
|
||||||
"Load15": 3.99267578125,
|
|
||||||
"TcpConnCount": 195,
|
|
||||||
"UdpConnCount": 70,
|
|
||||||
"ProcessCount": 437
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id": 2,
|
|
||||||
"name": "Server2",
|
|
||||||
"tag": "Tag2",
|
|
||||||
"last_active": -62135596800,
|
|
||||||
"ipv4": "",
|
|
||||||
"ipv6": "",
|
|
||||||
"valid_ip": "",
|
|
||||||
"host": {
|
|
||||||
"Platform": "",
|
|
||||||
"PlatformVersion": "",
|
|
||||||
"CPU": null,
|
|
||||||
"MemTotal": 0,
|
|
||||||
"DiskTotal": 0,
|
|
||||||
"SwapTotal": 0,
|
|
||||||
"Arch": "",
|
|
||||||
"Virtualization": "",
|
|
||||||
"BootTime": 0,
|
|
||||||
"CountryCode": "",
|
|
||||||
"Version": ""
|
|
||||||
},
|
|
||||||
"status": {
|
|
||||||
"CPU": 0,
|
|
||||||
"MemUsed": 0,
|
|
||||||
"SwapUsed": 0,
|
|
||||||
"DiskUsed": 0,
|
|
||||||
"NetInTransfer": 0,
|
|
||||||
"NetOutTransfer": 0,
|
|
||||||
"NetInSpeed": 0,
|
|
||||||
"NetOutSpeed": 0,
|
|
||||||
"Uptime": 0,
|
|
||||||
"Load1": 0,
|
|
||||||
"Load5": 0,
|
|
||||||
"Load15": 0,
|
|
||||||
"TcpConnCount": 0,
|
|
||||||
"UdpConnCount": 0,
|
|
||||||
"ProcessCount": 0
|
|
||||||
}
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
|
||||||
</code></pre></div>`,16),a=[q];function i(r,s,d,l,c,p){return e(),o("div",null,a)}var m=t(n,[["render",i]]);export{v as __pageData,m as default};
|
|
@ -1 +0,0 @@
|
|||||||
import{_ as t,c as o,o as e,a as u}from"./app.38e99b9a.js";const v='{"title":"Create Token","description":"","frontmatter":{},"headers":[{"level":2,"title":"Create Token","slug":"create-token"},{"level":2,"title":"Authentication method","slug":"authentication-method"},{"level":2,"title":"How to use","slug":"how-to-use"}],"relativePath":"en_US/guide/api.md","lastUpdated":1682159272000}',n={},q=u("",16),a=[q];function i(r,s,d,l,c,p){return e(),o("div",null,a)}var m=t(n,[["render",i]]);export{v as __pageData,m as default};
|
|
File diff suppressed because one or more lines are too long
@ -1 +0,0 @@
|
|||||||
import{_ as e,c as a,o as t,a as o}from"./app.38e99b9a.js";const m='{"title":"Preparations","description":"","frontmatter":{},"headers":[{"level":2,"title":"Preparations","slug":"preparations"},{"level":2,"title":"Get the Client ID and Client Secret on Github/Gitlab","slug":"get-the-client-id-and-client-secret-on-github-gitlab"},{"level":2,"title":"Installing Dashboard on the server","slug":"installing-dashboard-on-the-server"},{"level":2,"title":"Configure reverse proxy","slug":"configure-reverse-proxy"},{"level":2,"title":"Configuring SSL in the aaPanel","slug":"configuring-ssl-in-the-aapanel"},{"level":2,"title":"FAQ","slug":"faq"},{"level":3,"title":"What should I do if /terminal or /ws cannot be connected after HTTPS is enabled?","slug":"what-should-i-do-if-terminal-or-ws-cannot-be-connected-after-https-is-enabled"},{"level":3,"title":"I am not satisfied with the data modification or addition function provided by the Dashboard, what if I want to modify or add data myself?","slug":"i-am-not-satisfied-with-the-data-modification-or-addition-function-provided-by-the-dashboard-what-if-i-want-to-modify-or-add-data-myself"},{"level":3,"title":"What are each table or column in the database?","slug":"what-are-each-table-or-column-in-the-database"},{"level":3,"title":"Does Dashboard update automatically?","slug":"does-dashboard-update-automatically"},{"level":3,"title":"How do I update the Dashboard?","slug":"how-do-i-update-the-dashboard"}],"relativePath":"en_US/guide/dashboard.md","lastUpdated":1682159272000}',n={},s=o("",41),i=[s];function r(l,d,c,p,h,u){return t(),a("div",null,i)}var f=e(n,[["render",r]]);export{m as __pageData,f as default};
|
|
21
assets/en_US_guide_dashboard.md.d78e0670.js
Normal file
21
assets/en_US_guide_dashboard.md.d78e0670.js
Normal file
File diff suppressed because one or more lines are too long
1
assets/en_US_guide_dashboard.md.d78e0670.lean.js
Normal file
1
assets/en_US_guide_dashboard.md.d78e0670.lean.js
Normal file
@ -0,0 +1 @@
|
|||||||
|
import{_ as e,o as a,c as t,R as o}from"./chunks/framework.1625126e.js";const y=JSON.parse('{"title":"","description":"","frontmatter":{},"headers":[],"relativePath":"en_US/guide/dashboard.md","filePath":"en_US/guide/dashboard.md","lastUpdated":1687190167000}'),s={name:"en_US/guide/dashboard.md"},n=o("",41),l=[n];function r(i,p,c,d,h,u){return a(),t("div",null,l)}const m=e(s,[["render",r]]);export{y as __pageData,m as default};
|
@ -1,13 +0,0 @@
|
|||||||
import{_ as e,c as a,o as t,a as s}from"./app.38e99b9a.js";const g='{"title":"Why the IP displayed in the admin panel and the actual IP of the Agent are not the same?","description":"","frontmatter":{},"headers":[{"level":2,"title":"Why the IP displayed in the admin panel and the actual IP of the Agent are not the same?","slug":"why-the-ip-displayed-in-the-admin-panel-and-the-actual-ip-of-the-agent-are-not-the-same"},{"level":2,"title":"Forgot your access password or deleted your access password","slug":"forgot-your-access-password-or-deleted-your-access-password"},{"level":2,"title":"Dashboard install/restart/update failed: iptables ......","slug":"dashboard-install-restart-update-failed-iptables"},{"level":2,"title":"Dashboard reboot failed: Invalid hostPort: nzsiteport etc.","slug":"dashboard-reboot-failed-invalid-hostport-nz-site-port-etc"},{"level":2,"title":"Wrong Dashboard layout, CSS resources cannot be loaded","slug":"wrong-dashboard-layout-css-resources-cannot-be-loaded"}],"relativePath":"en_US/guide/dashboardq.md","lastUpdated":1682159272000}',o={},n=s(`<h2 id="why-the-ip-displayed-in-the-admin-panel-and-the-actual-ip-of-the-agent-are-not-the-same" tabindex="-1">Why the IP displayed in the admin panel and the actual IP of the Agent are not the same? <a class="header-anchor" href="#why-the-ip-displayed-in-the-admin-panel-and-the-actual-ip-of-the-agent-are-not-the-same" aria-hidden="true">#</a></h2><p>First of all, explain how the IP displayed in the admin panel is gotten: the Agent will request the IP-API every once in a while, get the IP information and report it to the Dashboard, the IP-API currently used can be viewed here: <a href="https://github.com/naiba/nezha/blob/master/cmd/agent/monitor/myip.go" target="_blank" rel="noopener noreferrer">myip.go</a><br> If you find that the IP displayed in the admin panel is not the same as the IP provided to you by the service provider, the biggest possibility is that the service provider gave you the <strong>entry IP</strong>, but the Agent tested out your <strong>exit IP</strong>. This problem may also occur in BGP servers and Leased line.</p><div class="tip custom-block"><p class="custom-block-title">TIP</p><p>To take a simple and very common example, the service provider to provide you a anti-DDoS server, in order to meet the goals of both DDoS protection and low network disruption rate, the IP provided to you may be the mapped anti-DDoS IP and not the real exit IP of your server</p></div><p>You can also test the exit IP by running the following command in the Agent server:</p><div class="language-shell"><pre><code><span class="token function">curl</span> api.myip.la
|
|
||||||
<span class="token function">curl</span> ip.sb
|
|
||||||
<span class="token function">curl</span> ip-api.com
|
|
||||||
</code></pre></div><h2 id="forgot-your-access-password-or-deleted-your-access-password" tabindex="-1">Forgot your access password or deleted your access password <a class="header-anchor" href="#forgot-your-access-password-or-deleted-your-access-password" aria-hidden="true">#</a></h2><p>Please view or edit the <code>/opt/nezha/dashboard/data/config.yaml</code> file.<br> The password is located in the site-viewpassword item.</p><h2 id="dashboard-install-restart-update-failed-iptables" tabindex="-1">Dashboard install/restart/update failed: iptables ...... <a class="header-anchor" href="#dashboard-install-restart-update-failed-iptables" aria-hidden="true">#</a></h2><p>First, try restarting docker and retrying again</p><div class="language-shell"><pre><code>systemctl status <span class="token function">docker</span>
|
|
||||||
systemctl restart <span class="token function">docker</span>
|
|
||||||
systemctl status <span class="token function">docker</span>
|
|
||||||
</code></pre></div><p>Restart and try to reinstall the Dashboard.<br> If you still get iptables... etc. errors, then consider simply closing iptables or even removing it.<br> This issue may also be kernel related, try replacing the official kernel as well.</p><h2 id="dashboard-reboot-failed-invalid-hostport-nz-site-port-etc" tabindex="-1">Dashboard reboot failed: Invalid hostPort: nz_site_port etc. <a class="header-anchor" href="#dashboard-reboot-failed-invalid-hostport-nz-site-port-etc" aria-hidden="true">#</a></h2><p>Usually this does not occur, if it does, you can modify the configuration through the installation script.</p><h2 id="wrong-dashboard-layout-css-resources-cannot-be-loaded" tabindex="-1">Wrong Dashboard layout, CSS resources cannot be loaded <a class="header-anchor" href="#wrong-dashboard-layout-css-resources-cannot-be-loaded" aria-hidden="true">#</a></h2><p>If the Dashboard page has an incorrect layout, the usual reason is that the CSS file is missing or cannot be loaded.<br> When such an issue occurs, you can first try <code>Reboot and update the Dashboard</code>. If the problem is not resolved after updating the Dashboard, then there may be an unsuitable configuration within your vhost configuration file. You can edit the vhost file or within the Aapanel to:</p><ol><li>Find the site you configured when installing Dashboard in <code>Website</code> and click <code>Conf</code> on the right side</li><li>Select <code>Config</code> and delete the following from the config file:</li></ol><div class="language-nginx"><pre><code><span class="token directive"><span class="token keyword">location</span> ~ .*\\.(js|css)?$</span>
|
|
||||||
<span class="token punctuation">{</span>
|
|
||||||
<span class="token directive"><span class="token keyword">expires</span> <span class="token number">12h</span></span><span class="token punctuation">;</span>
|
|
||||||
<span class="token directive"><span class="token keyword">error_log</span> /dev/null</span><span class="token punctuation">;</span>
|
|
||||||
<span class="token directive"><span class="token keyword">access_log</span> /dev/null</span><span class="token punctuation">;</span>
|
|
||||||
<span class="token punctuation">}</span>
|
|
||||||
</code></pre></div><ol start="3"><li>Save the configuration and clear the cache in the browser, NginX, and CDN, then refresh the page and it should return to normal.</li></ol>`,18),r=[n];function i(d,l,c,h,p,u){return t(),a("div",null,r)}var f=e(o,[["render",i]]);export{g as __pageData,f as default};
|
|
@ -1 +0,0 @@
|
|||||||
import{_ as e,c as a,o as t,a as s}from"./app.38e99b9a.js";const g='{"title":"Why the IP displayed in the admin panel and the actual IP of the Agent are not the same?","description":"","frontmatter":{},"headers":[{"level":2,"title":"Why the IP displayed in the admin panel and the actual IP of the Agent are not the same?","slug":"why-the-ip-displayed-in-the-admin-panel-and-the-actual-ip-of-the-agent-are-not-the-same"},{"level":2,"title":"Forgot your access password or deleted your access password","slug":"forgot-your-access-password-or-deleted-your-access-password"},{"level":2,"title":"Dashboard install/restart/update failed: iptables ......","slug":"dashboard-install-restart-update-failed-iptables"},{"level":2,"title":"Dashboard reboot failed: Invalid hostPort: nzsiteport etc.","slug":"dashboard-reboot-failed-invalid-hostport-nz-site-port-etc"},{"level":2,"title":"Wrong Dashboard layout, CSS resources cannot be loaded","slug":"wrong-dashboard-layout-css-resources-cannot-be-loaded"}],"relativePath":"en_US/guide/dashboardq.md","lastUpdated":1682159272000}',o={},n=s("",18),r=[n];function i(d,l,c,h,p,u){return t(),a("div",null,r)}var f=e(o,[["render",i]]);export{g as __pageData,f as default};
|
|
10
assets/en_US_guide_dashboardq.md.f8c0f2c4.js
Normal file
10
assets/en_US_guide_dashboardq.md.f8c0f2c4.js
Normal file
@ -0,0 +1,10 @@
|
|||||||
|
import{_ as e,o as a,c as s,R as t}from"./chunks/framework.1625126e.js";const b=JSON.parse('{"title":"","description":"","frontmatter":{},"headers":[],"relativePath":"en_US/guide/dashboardq.md","filePath":"en_US/guide/dashboardq.md","lastUpdated":1687190167000}'),o={name:"en_US/guide/dashboardq.md"},n=t(`<h2 id="why-the-ip-displayed-in-the-admin-panel-and-the-actual-ip-of-the-agent-are-not-the-same" tabindex="-1">Why the IP displayed in the admin panel and the actual IP of the Agent are not the same? <a class="header-anchor" href="#why-the-ip-displayed-in-the-admin-panel-and-the-actual-ip-of-the-agent-are-not-the-same" aria-label="Permalink to "Why the IP displayed in the admin panel and the actual IP of the Agent are not the same?""></a></h2><p>First of all, explain how the IP displayed in the admin panel is gotten: the Agent will request the IP-API every once in a while, get the IP information and report it to the Dashboard, the IP-API currently used can be viewed here: <a href="https://github.com/naiba/nezha/blob/master/cmd/agent/monitor/myip.go" target="_blank" rel="noreferrer">myip.go</a><br> If you find that the IP displayed in the admin panel is not the same as the IP provided to you by the service provider, the biggest possibility is that the service provider gave you the <strong>entry IP</strong>, but the Agent tested out your <strong>exit IP</strong>. This problem may also occur in BGP servers and Leased line.</p><div class="tip custom-block"><p class="custom-block-title">TIP</p><p>To take a simple and very common example, the service provider to provide you a anti-DDoS server, in order to meet the goals of both DDoS protection and low network disruption rate, the IP provided to you may be the mapped anti-DDoS IP and not the real exit IP of your server</p></div><p>You can also test the exit IP by running the following command in the Agent server:</p><div class="language-shell"><button title="Copy Code" class="copy"></button><span class="lang">shell</span><pre class="shiki material-theme-palenight"><code><span class="line"><span style="color:#FFCB6B;">curl</span><span style="color:#A6ACCD;"> </span><span style="color:#C3E88D;">api.myip.la</span></span>
|
||||||
|
<span class="line"><span style="color:#FFCB6B;">curl</span><span style="color:#A6ACCD;"> </span><span style="color:#C3E88D;">ip.sb</span></span>
|
||||||
|
<span class="line"><span style="color:#FFCB6B;">curl</span><span style="color:#A6ACCD;"> </span><span style="color:#C3E88D;">ip-api.com</span></span></code></pre></div><h2 id="forgot-your-access-password-or-deleted-your-access-password" tabindex="-1">Forgot your access password or deleted your access password <a class="header-anchor" href="#forgot-your-access-password-or-deleted-your-access-password" aria-label="Permalink to "Forgot your access password or deleted your access password""></a></h2><p>Please view or edit the <code>/opt/nezha/dashboard/data/config.yaml</code> file.<br> The password is located in the site-viewpassword item.</p><h2 id="dashboard-install-restart-update-failed-iptables" tabindex="-1">Dashboard install/restart/update failed: iptables ...... <a class="header-anchor" href="#dashboard-install-restart-update-failed-iptables" aria-label="Permalink to "Dashboard install/restart/update failed: iptables ......""></a></h2><p>First, try restarting docker and retrying again</p><div class="language-shell"><button title="Copy Code" class="copy"></button><span class="lang">shell</span><pre class="shiki material-theme-palenight"><code><span class="line"><span style="color:#FFCB6B;">systemctl</span><span style="color:#A6ACCD;"> </span><span style="color:#C3E88D;">status</span><span style="color:#A6ACCD;"> </span><span style="color:#C3E88D;">docker</span></span>
|
||||||
|
<span class="line"><span style="color:#FFCB6B;">systemctl</span><span style="color:#A6ACCD;"> </span><span style="color:#C3E88D;">restart</span><span style="color:#A6ACCD;"> </span><span style="color:#C3E88D;">docker</span></span>
|
||||||
|
<span class="line"><span style="color:#FFCB6B;">systemctl</span><span style="color:#A6ACCD;"> </span><span style="color:#C3E88D;">status</span><span style="color:#A6ACCD;"> </span><span style="color:#C3E88D;">docker</span></span></code></pre></div><p>Restart and try to reinstall the Dashboard.<br> If you still get iptables... etc. errors, then consider simply closing iptables or even removing it.<br> This issue may also be kernel related, try replacing the official kernel as well.</p><h2 id="dashboard-reboot-failed-invalid-hostport-nz-site-port-etc" tabindex="-1">Dashboard reboot failed: Invalid hostPort: nz_site_port etc. <a class="header-anchor" href="#dashboard-reboot-failed-invalid-hostport-nz-site-port-etc" aria-label="Permalink to "Dashboard reboot failed: Invalid hostPort: nz_site_port etc.""></a></h2><p>Usually this does not occur, if it does, you can modify the configuration through the installation script.</p><h2 id="wrong-dashboard-layout-css-resources-cannot-be-loaded" tabindex="-1">Wrong Dashboard layout, CSS resources cannot be loaded <a class="header-anchor" href="#wrong-dashboard-layout-css-resources-cannot-be-loaded" aria-label="Permalink to "Wrong Dashboard layout, CSS resources cannot be loaded""></a></h2><p>If the Dashboard page has an incorrect layout, the usual reason is that the CSS file is missing or cannot be loaded.<br> When such an issue occurs, you can first try <code>Reboot and update the Dashboard</code>. If the problem is not resolved after updating the Dashboard, then there may be an unsuitable configuration within your vhost configuration file. You can edit the vhost file or within the Aapanel to:</p><ol><li>Find the site you configured when installing Dashboard in <code>Website</code> and click <code>Conf</code> on the right side</li><li>Select <code>Config</code> and delete the following from the config file:</li></ol><div class="language-nginx"><button title="Copy Code" class="copy"></button><span class="lang">nginx</span><pre class="shiki material-theme-palenight"><code><span class="line"><span style="color:#89DDFF;">location</span><span style="color:#A6ACCD;"> </span><span style="color:#89DDFF;">~</span><span style="color:#A6ACCD;"> .*\\.(js|css)?$</span></span>
|
||||||
|
<span class="line"><span style="color:#A6ACCD;"> </span><span style="color:#F07178;">{</span></span>
|
||||||
|
<span class="line"><span style="color:#F07178;"> </span><span style="color:#89DDFF;"> expires </span><span style="color:#F07178;"> </span><span style="color:#F78C6C;">12h</span><span style="color:#89DDFF;">;</span></span>
|
||||||
|
<span class="line"><span style="color:#F07178;"> </span><span style="color:#89DDFF;"> error_log </span><span style="color:#F07178;">/dev/null</span><span style="color:#89DDFF;">;</span></span>
|
||||||
|
<span class="line"><span style="color:#F07178;"> </span><span style="color:#89DDFF;"> access_log </span><span style="color:#F07178;">/dev/null</span><span style="color:#89DDFF;">;</span></span>
|
||||||
|
<span class="line"><span style="color:#F07178;"> }</span></span></code></pre></div><ol start="3"><li>Save the configuration and clear the cache in the browser, NginX, and CDN, then refresh the page and it should return to normal.</li></ol>`,18),l=[n];function r(i,p,c,d,h,y){return a(),s("div",null,l)}const g=e(o,[["render",r]]);export{b as __pageData,g as default};
|
1
assets/en_US_guide_dashboardq.md.f8c0f2c4.lean.js
Normal file
1
assets/en_US_guide_dashboardq.md.f8c0f2c4.lean.js
Normal file
@ -0,0 +1 @@
|
|||||||
|
import{_ as e,o as a,c as s,R as t}from"./chunks/framework.1625126e.js";const b=JSON.parse('{"title":"","description":"","frontmatter":{},"headers":[],"relativePath":"en_US/guide/dashboardq.md","filePath":"en_US/guide/dashboardq.md","lastUpdated":1687190167000}'),o={name:"en_US/guide/dashboardq.md"},n=t("",18),l=[n];function r(i,p,c,d,h,y){return a(),s("div",null,l)}const g=e(o,[["render",r]]);export{b as __pageData,g as default};
|
1
assets/en_US_guide_loginq.md.9b2c983a.js
Normal file
1
assets/en_US_guide_loginq.md.9b2c983a.js
Normal file
File diff suppressed because one or more lines are too long
1
assets/en_US_guide_loginq.md.9b2c983a.lean.js
Normal file
1
assets/en_US_guide_loginq.md.9b2c983a.lean.js
Normal file
@ -0,0 +1 @@
|
|||||||
|
import{_ as e,o,c as t,R as a}from"./chunks/framework.1625126e.js";const b=JSON.parse('{"title":"","description":"","frontmatter":{},"headers":[],"relativePath":"en_US/guide/loginq.md","filePath":"en_US/guide/loginq.md","lastUpdated":1687190167000}'),r={name:"en_US/guide/loginq.md"},i=a("",20),n=[i];function s(l,c,h,d,u,p){return o(),t("div",null,n)}const k=e(r,[["render",s]]);export{b as __pageData,k as default};
|
File diff suppressed because one or more lines are too long
Some files were not shown because too many files have changed in this diff Show More
Loading…
x
Reference in New Issue
Block a user