[feat]支持下发设置节点所属通道
智能大石头 authored at 2024-04-16 12:32:58
54.01 KiB
Stardust
<style>
    table {
        border-collapse: collapse;
        border: 1px solid;
        border-color: rgb(211, 202, 221);
    }

    table thead,
    table tr {
        border-top-width: 1px;
        border-top-style: solid;
        border-top-color: rgb(211, 202, 221);
    }

    table {
        border-bottom-width: 1px;
        border-bottom-style: solid;
        border-bottom-color: rgb(211, 202, 221);
    }

    table td,
    table th {
        padding: 5px 10px;
        font-size: 14px;
        font-family: Verdana;
        color: rgb(95, 74, 121);
    }

    table tr:nth-child(even) {
        background: rgb(223, 216, 232)
    }

    table tr:nth-child(odd) {
        background: #FFF
    }
</style>
<h3>节点(Node)</h3>
<table>
    <thead>
        <tr>
            <th>名称</th>
            <th>显示名</th>
            <th>类型</th>
            <th>长度</th>
            <th>精度</th>
            <th>主键</th>
            <th>允许空</th>
            <th>备注</th>
        </tr>
    </thead>
    <tbody>
        <tr>
            <td>ID</td>
            <td>编号</td>
            <td>Int32</td>
            <td></td>
            <td></td>
            <td title="自增">AI</td>
            <td>N</td>
            <td></td>
        </tr>

        <tr>
            <td>ProjectId</td>
            <td>项目</td>
            <td>Int32</td>
            <td></td>
            <td></td>
            <td></td>
            <td>N</td>
            <td>资源归属的团队</td>
        </tr>

        <tr>
            <td>Name</td>
            <td>名称</td>
            <td>String</td>
            <td>50</td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
        </tr>

        <tr>
            <td>Code</td>
            <td>编码</td>
            <td>String</td>
            <td>50</td>
            <td></td>
            <td title="唯一索引">UQ</td>
            <td></td>
            <td>NodeKey</td>
        </tr>

        <tr>
            <td>Secret</td>
            <td>密钥</td>
            <td>String</td>
            <td>50</td>
            <td></td>
            <td></td>
            <td></td>
            <td>NodeSecret</td>
        </tr>

        <tr>
            <td>Enable</td>
            <td>启用</td>
            <td>Boolean</td>
            <td></td>
            <td></td>
            <td></td>
            <td>N</td>
            <td></td>
        </tr>

        <tr>
            <td>ProductCode</td>
            <td>产品</td>
            <td>String</td>
            <td>50</td>
            <td></td>
            <td></td>
            <td></td>
            <td>产品编码,用于区分不同类型节点</td>
        </tr>

        <tr>
            <td>Category</td>
            <td>分类</td>
            <td>String</td>
            <td>50</td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
        </tr>

        <tr>
            <td>Version</td>
            <td>版本</td>
            <td>String</td>
            <td>50</td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
        </tr>

        <tr>
            <td>CompileTime</td>
            <td>编译时间</td>
            <td>DateTime</td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
        </tr>

        <tr>
            <td>OS</td>
            <td>操作系统</td>
            <td>String</td>
            <td>100</td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
        </tr>

        <tr>
            <td>OSVersion</td>
            <td>系统版本</td>
            <td>String</td>
            <td>50</td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
        </tr>

        <tr>
            <td>OSKind</td>
            <td>系统种类</td>
            <td>Int32</td>
            <td></td>
            <td></td>
            <td></td>
            <td>N</td>
            <td>主流操作系统类型,不考虑子版本</td>
        </tr>

        <tr>
            <td>Architecture</td>
            <td>架构</td>
            <td>String</td>
            <td>50</td>
            <td></td>
            <td></td>
            <td></td>
            <td>处理器架构,X86/X64/Arm/Arm64</td>
        </tr>

        <tr>
            <td>MachineName</td>
            <td>机器名称</td>
            <td>String</td>
            <td>50</td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
        </tr>

        <tr>
            <td>UserName</td>
            <td>用户名称</td>
            <td>String</td>
            <td>50</td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
        </tr>

        <tr>
            <td>IP</td>
            <td>本地IP</td>
            <td>String</td>
            <td>200</td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
        </tr>

        <tr>
            <td>Cpu</td>
            <td>CPU</td>
            <td>Int32</td>
            <td></td>
            <td></td>
            <td></td>
            <td>N</td>
            <td>处理器核心数</td>
        </tr>

        <tr>
            <td>Memory</td>
            <td>内存</td>
            <td>Int32</td>
            <td></td>
            <td></td>
            <td></td>
            <td>N</td>
            <td>单位M</td>
        </tr>

        <tr>
            <td>TotalSize</td>
            <td>磁盘</td>
            <td>Int32</td>
            <td></td>
            <td></td>
            <td></td>
            <td>N</td>
            <td>应用所在盘,单位M</td>
        </tr>

        <tr>
            <td>DriveSize</td>
            <td>驱动器大小</td>
            <td>Int32</td>
            <td></td>
            <td></td>
            <td></td>
            <td>N</td>
            <td>所有分区总大小,单位M</td>
        </tr>

        <tr>
            <td>DriveInfo</td>
            <td>驱动器信息</td>
            <td>String</td>
            <td>500</td>
            <td></td>
            <td></td>
            <td></td>
            <td>各分区大小,逗号分隔</td>
        </tr>

        <tr>
            <td>MaxOpenFiles</td>
            <td>最大打开文件</td>
            <td>Int32</td>
            <td></td>
            <td></td>
            <td></td>
            <td>N</td>
            <td>Linux上的ulimit -n</td>
        </tr>

        <tr>
            <td>Dpi</td>
            <td>像素点</td>
            <td>String</td>
            <td>50</td>
            <td></td>
            <td></td>
            <td></td>
            <td>默认96*96</td>
        </tr>

        <tr>
            <td>Resolution</td>
            <td>分辨率</td>
            <td>String</td>
            <td>50</td>
            <td></td>
            <td></td>
            <td></td>
            <td>例如1024*768</td>
        </tr>

        <tr>
            <td>Product</td>
            <td>产品名</td>
            <td>String</td>
            <td>50</td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
        </tr>

        <tr>
            <td>Vendor</td>
            <td>制造商</td>
            <td>String</td>
            <td>50</td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
        </tr>

        <tr>
            <td>Processor</td>
            <td>处理器</td>
            <td>String</td>
            <td>200</td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
        </tr>

        <tr>
            <td>Uuid</td>
            <td>唯一标识</td>
            <td>String</td>
            <td>50</td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
        </tr>

        <tr>
            <td>MachineGuid</td>
            <td>机器标识</td>
            <td>String</td>
            <td>50</td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
        </tr>

        <tr>
            <td>SerialNumber</td>
            <td>序列号</td>
            <td>String</td>
            <td>50</td>
            <td></td>
            <td></td>
            <td></td>
            <td>适用于品牌机,跟笔记本标签显示一致</td>
        </tr>

        <tr>
            <td>Board</td>
            <td>主板</td>
            <td>String</td>
            <td>50</td>
            <td></td>
            <td></td>
            <td></td>
            <td>序列号或家族信息</td>
        </tr>

        <tr>
            <td>DiskID</td>
            <td>磁盘序列号</td>
            <td>String</td>
            <td>200</td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
        </tr>

        <tr>
            <td>MACs</td>
            <td>网卡</td>
            <td>String</td>
            <td>200</td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
        </tr>

        <tr>
            <td>InstallPath</td>
            <td>安装路径</td>
            <td>String</td>
            <td>200</td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
        </tr>

        <tr>
            <td>Runtime</td>
            <td>运行时</td>
            <td>String</td>
            <td>50</td>
            <td></td>
            <td></td>
            <td></td>
            <td>.Net运行时版本</td>
        </tr>

        <tr>
            <td>Framework</td>
            <td>框架</td>
            <td>String</td>
            <td>50</td>
            <td></td>
            <td></td>
            <td></td>
            <td>本地支持的最高版本框架</td>
        </tr>

        <tr>
            <td>Frameworks</td>
            <td>框架集合</td>
            <td>String</td>
            <td>200</td>
            <td></td>
            <td></td>
            <td></td>
            <td>本地支持的所有版本框架,逗号隔开</td>
        </tr>

        <tr>
            <td>ProvinceID</td>
            <td>省份</td>
            <td>Int32</td>
            <td></td>
            <td></td>
            <td></td>
            <td>N</td>
            <td></td>
        </tr>

        <tr>
            <td>CityID</td>
            <td>城市</td>
            <td>Int32</td>
            <td></td>
            <td></td>
            <td></td>
            <td>N</td>
            <td></td>
        </tr>

        <tr>
            <td>Address</td>
            <td>地址</td>
            <td>String</td>
            <td>200</td>
            <td></td>
            <td></td>
            <td></td>
            <td>该节点所处位置</td>
        </tr>

        <tr>
            <td>Period</td>
            <td>采样周期</td>
            <td>Int32</td>
            <td></td>
            <td></td>
            <td></td>
            <td>N</td>
            <td>默认60秒</td>
        </tr>

        <tr>
            <td>NewServer</td>
            <td>新服务器</td>
            <td>String</td>
            <td>50</td>
            <td></td>
            <td></td>
            <td></td>
            <td>该节点自动迁移到新的服务器地址</td>
        </tr>

        <tr>
            <td>LastVersion</td>
            <td>最后版本</td>
            <td>String</td>
            <td>50</td>
            <td></td>
            <td></td>
            <td></td>
            <td>最后一次升级所使用的版本号,避免重复升级同一个版本</td>
        </tr>

        <tr>
            <td>Channel</td>
            <td>通道</td>
            <td>Int32</td>
            <td></td>
            <td></td>
            <td></td>
            <td>N</td>
            <td>升级通道,默认Release通道,使用Beta通道可以得到较新版本</td>
        </tr>

        <tr>
            <td>WebHook</td>
            <td>告警机器人</td>
            <td>String</td>
            <td>500</td>
            <td></td>
            <td></td>
            <td></td>
            <td>钉钉、企业微信等</td>
        </tr>

        <tr>
            <td>AlarmCpuRate</td>
            <td>CPU告警</td>
            <td>Int32</td>
            <td></td>
            <td></td>
            <td></td>
            <td>N</td>
            <td>CPU告警的百分比阈值,CPU使用率达到该值时告警,百分之一</td>
        </tr>

        <tr>
            <td>AlarmMemoryRate</td>
            <td>内存告警</td>
            <td>Int32</td>
            <td></td>
            <td></td>
            <td></td>
            <td>N</td>
            <td>内存告警的百分比阈值,内存使用率达到该值时告警,百分之一</td>
        </tr>

        <tr>
            <td>AlarmDiskRate</td>
            <td>磁盘告警</td>
            <td>Int32</td>
            <td></td>
            <td></td>
            <td></td>
            <td>N</td>
            <td>磁盘告警的百分比阈值,磁盘使用率达到该值时告警,百分之一</td>
        </tr>

        <tr>
            <td>AlarmTcp</td>
            <td>连接数告警</td>
            <td>Int32</td>
            <td></td>
            <td></td>
            <td></td>
            <td>N</td>
            <td>TCP连接数达到该值时告警,包括连接数、主动关闭和被动关闭</td>
        </tr>

        <tr>
            <td>AlarmProcesses</td>
            <td>进程告警</td>
            <td>String</td>
            <td>50</td>
            <td></td>
            <td></td>
            <td></td>
            <td>要守护的进程不存在时告警,多进程逗号隔开,支持*模糊匹配</td>
        </tr>

        <tr>
            <td>AlarmOnOffline</td>
            <td>下线告警</td>
            <td>Boolean</td>
            <td></td>
            <td></td>
            <td></td>
            <td>N</td>
            <td>节点下线时,发送告警</td>
        </tr>

        <tr>
            <td>Logins</td>
            <td>登录次数</td>
            <td>Int32</td>
            <td></td>
            <td></td>
            <td></td>
            <td>N</td>
            <td></td>
        </tr>

        <tr>
            <td>LastLogin</td>
            <td>最后登录</td>
            <td>DateTime</td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
        </tr>

        <tr>
            <td>LastLoginIP</td>
            <td>最后IP</td>
            <td>String</td>
            <td>50</td>
            <td></td>
            <td></td>
            <td></td>
            <td>最后的公网IP地址</td>
        </tr>

        <tr>
            <td>LastActive</td>
            <td>最后活跃</td>
            <td>DateTime</td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
            <td>心跳过程中每10分钟更新活跃时间</td>
        </tr>

        <tr>
            <td>OnlineTime</td>
            <td>在线时长</td>
            <td>Int32</td>
            <td></td>
            <td></td>
            <td></td>
            <td>N</td>
            <td>单位,秒</td>
        </tr>

        <tr>
            <td>CreateUserID</td>
            <td>创建者</td>
            <td>Int32</td>
            <td></td>
            <td></td>
            <td></td>
            <td>N</td>
            <td></td>
        </tr>

        <tr>
            <td>CreateTime</td>
            <td>创建时间</td>
            <td>DateTime</td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
        </tr>

        <tr>
            <td>CreateIP</td>
            <td>创建地址</td>
            <td>String</td>
            <td>50</td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
        </tr>

        <tr>
            <td>UpdateUserID</td>
            <td>更新者</td>
            <td>Int32</td>
            <td></td>
            <td></td>
            <td></td>
            <td>N</td>
            <td></td>
        </tr>

        <tr>
            <td>UpdateTime</td>
            <td>更新时间</td>
            <td>DateTime</td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
        </tr>

        <tr>
            <td>UpdateIP</td>
            <td>更新地址</td>
            <td>String</td>
            <td>50</td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
        </tr>

        <tr>
            <td>Remark</td>
            <td>备注</td>
            <td>String</td>
            <td>500</td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
        </tr>
    </tbody>
</table>
<br></br>
<h3>节点在线(NodeOnline)</h3>
<table>
    <thead>
        <tr>
            <th>名称</th>
            <th>显示名</th>
            <th>类型</th>
            <th>长度</th>
            <th>精度</th>
            <th>主键</th>
            <th>允许空</th>
            <th>备注</th>
        </tr>
    </thead>
    <tbody>
        <tr>
            <td>ID</td>
            <td>编号</td>
            <td>Int32</td>
            <td></td>
            <td></td>
            <td title="自增">AI</td>
            <td>N</td>
            <td></td>
        </tr>

        <tr>
            <td>ProjectId</td>
            <td>项目</td>
            <td>Int32</td>
            <td></td>
            <td></td>
            <td></td>
            <td>N</td>
            <td>资源归属的团队</td>
        </tr>

        <tr>
            <td>SessionID</td>
            <td>会话</td>
            <td>String</td>
            <td>50</td>
            <td></td>
            <td title="唯一索引">UQ</td>
            <td></td>
            <td></td>
        </tr>

        <tr>
            <td>NodeID</td>
            <td>节点</td>
            <td>Int32</td>
            <td></td>
            <td></td>
            <td></td>
            <td>N</td>
            <td></td>
        </tr>

        <tr>
            <td>Name</td>
            <td>名称</td>
            <td>String</td>
            <td>50</td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
        </tr>

        <tr>
            <td>IP</td>
            <td>本地IP</td>
            <td>String</td>
            <td>200</td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
        </tr>

        <tr>
            <td>Category</td>
            <td>分类</td>
            <td>String</td>
            <td>50</td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
        </tr>

        <tr>
            <td>ProvinceID</td>
            <td>省份</td>
            <td>Int32</td>
            <td></td>
            <td></td>
            <td></td>
            <td>N</td>
            <td></td>
        </tr>

        <tr>
            <td>CityID</td>
            <td>城市</td>
            <td>Int32</td>
            <td></td>
            <td></td>
            <td></td>
            <td>N</td>
            <td></td>
        </tr>

        <tr>
            <td>PingCount</td>
            <td>心跳</td>
            <td>Int32</td>
            <td></td>
            <td></td>
            <td></td>
            <td>N</td>
            <td></td>
        </tr>

        <tr>
            <td>WebSocket</td>
            <td>长连接</td>
            <td>Boolean</td>
            <td></td>
            <td></td>
            <td></td>
            <td>N</td>
            <td>WebSocket长连接</td>
        </tr>

        <tr>
            <td>Version</td>
            <td>版本</td>
            <td>String</td>
            <td>50</td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
        </tr>

        <tr>
            <td>CompileTime</td>
            <td>编译时间</td>
            <td>DateTime</td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
        </tr>

        <tr>
            <td>OSKind</td>
            <td>系统种类</td>
            <td>Int32</td>
            <td></td>
            <td></td>
            <td></td>
            <td>N</td>
            <td>主流操作系统类型,不考虑子版本</td>
        </tr>

        <tr>
            <td>Memory</td>
            <td>内存</td>
            <td>Int32</td>
            <td></td>
            <td></td>
            <td></td>
            <td>N</td>
            <td>单位M</td>
        </tr>

        <tr>
            <td>AvailableMemory</td>
            <td>可用内存</td>
            <td>Int32</td>
            <td></td>
            <td></td>
            <td></td>
            <td>N</td>
            <td>单位M</td>
        </tr>

        <tr>
            <td>MemoryUsed</td>
            <td>已用内存</td>
            <td>Int32</td>
            <td></td>
            <td></td>
            <td></td>
            <td>N</td>
            <td>单位M</td>
        </tr>

        <tr>
            <td>AvailableFreeSpace</td>
            <td>可用磁盘</td>
            <td>Int32</td>
            <td></td>
            <td></td>
            <td></td>
            <td>N</td>
            <td>应用所在盘,单位M</td>
        </tr>

        <tr>
            <td>SpaceUsed</td>
            <td>已用磁盘</td>
            <td>Int32</td>
            <td></td>
            <td></td>
            <td></td>
            <td>N</td>
            <td>应用所在盘,单位M</td>
        </tr>

        <tr>
            <td>DriveInfo</td>
            <td>驱动器信息</td>
            <td>String</td>
            <td>500</td>
            <td></td>
            <td></td>
            <td></td>
            <td>各分区大小,逗号分隔</td>
        </tr>

        <tr>
            <td>CpuRate</td>
            <td>CPU率</td>
            <td>Double</td>
            <td></td>
            <td></td>
            <td></td>
            <td>N</td>
            <td>占用率</td>
        </tr>

        <tr>
            <td>Temperature</td>
            <td>温度</td>
            <td>Double</td>
            <td></td>
            <td></td>
            <td></td>
            <td>N</td>
            <td></td>
        </tr>

        <tr>
            <td>Battery</td>
            <td>电量</td>
            <td>Double</td>
            <td></td>
            <td></td>
            <td></td>
            <td>N</td>
            <td></td>
        </tr>

        <tr>
            <td>Signal</td>
            <td>信号</td>
            <td>Int32</td>
            <td></td>
            <td></td>
            <td></td>
            <td>N</td>
            <td>信号强度,WiFi/4G</td>
        </tr>

        <tr>
            <td>UplinkSpeed</td>
            <td>上行速度</td>
            <td>Int64</td>
            <td></td>
            <td></td>
            <td></td>
            <td>N</td>
            <td>网络发送速度,字节每秒</td>
        </tr>

        <tr>
            <td>DownlinkSpeed</td>
            <td>下行速度</td>
            <td>Int64</td>
            <td></td>
            <td></td>
            <td></td>
            <td>N</td>
            <td>网络接收速度,字节每秒</td>
        </tr>

        <tr>
            <td>ProcessCount</td>
            <td>进程数</td>
            <td>Int32</td>
            <td></td>
            <td></td>
            <td></td>
            <td>N</td>
            <td></td>
        </tr>

        <tr>
            <td>TcpConnections</td>
            <td>连接数</td>
            <td>Int32</td>
            <td></td>
            <td></td>
            <td></td>
            <td>N</td>
            <td>传输数据Established的Tcp网络连接数</td>
        </tr>

        <tr>
            <td>TcpTimeWait</td>
            <td>主动关闭</td>
            <td>Int32</td>
            <td></td>
            <td></td>
            <td></td>
            <td>N</td>
            <td>主动关闭后TimeWait的Tcp网络连接数,下一步Closed</td>
        </tr>

        <tr>
            <td>TcpCloseWait</td>
            <td>被动关闭</td>
            <td>Int32</td>
            <td></td>
            <td></td>
            <td></td>
            <td>N</td>
            <td>被动关闭后CloseWait的Tcp网络连接数,下一步TimeWait</td>
        </tr>

        <tr>
            <td>Delay</td>
            <td>延迟</td>
            <td>Int32</td>
            <td></td>
            <td></td>
            <td></td>
            <td>N</td>
            <td>网络延迟,客户端最近一次心跳耗时的一半,单位ms</td>
        </tr>

        <tr>
            <td>Offset</td>
            <td>偏移</td>
            <td>Int32</td>
            <td></td>
            <td></td>
            <td></td>
            <td>N</td>
            <td>客户端UTC时间减服务端UTC时间,单位ms</td>
        </tr>

        <tr>
            <td>LocalTime</td>
            <td>本地时间</td>
            <td>DateTime</td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
        </tr>

        <tr>
            <td>Uptime</td>
            <td>开机时间</td>
            <td>Int32</td>
            <td></td>
            <td></td>
            <td></td>
            <td>N</td>
            <td>单位s</td>
        </tr>

        <tr>
            <td>MACs</td>
            <td>网卡</td>
            <td>String</td>
            <td>200</td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
        </tr>

        <tr>
            <td>Processes</td>
            <td>进程列表</td>
            <td>String</td>
            <td>2000</td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
        </tr>

        <tr>
            <td>Token</td>
            <td>令牌</td>
            <td>String</td>
            <td>200</td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
        </tr>

        <tr>
            <td>Data</td>
            <td>数据</td>
            <td>String</td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
        </tr>

        <tr>
            <td>TraceId</td>
            <td>追踪</td>
            <td>String</td>
            <td>50</td>
            <td></td>
            <td></td>
            <td></td>
            <td>最新一次查看采样,可用于关联多个片段,建立依赖关系,随线程上下文、Http、Rpc传递</td>
        </tr>

        <tr>
            <td>Creator</td>
            <td>创建者</td>
            <td>String</td>
            <td>50</td>
            <td></td>
            <td></td>
            <td></td>
            <td>服务端节点</td>
        </tr>

        <tr>
            <td>CreateTime</td>
            <td>创建时间</td>
            <td>DateTime</td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
        </tr>

        <tr>
            <td>CreateIP</td>
            <td>创建地址</td>
            <td>String</td>
            <td>50</td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
        </tr>

        <tr>
            <td>UpdateTime</td>
            <td>更新时间</td>
            <td>DateTime</td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
        </tr>

        <tr>
            <td>UpdateIP</td>
            <td>更新地址</td>
            <td>String</td>
            <td>50</td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
        </tr>
    </tbody>
</table>
<br></br>
<h3>节点历史(NodeHistory)</h3>
<table>
    <thead>
        <tr>
            <th>名称</th>
            <th>显示名</th>
            <th>类型</th>
            <th>长度</th>
            <th>精度</th>
            <th>主键</th>
            <th>允许空</th>
            <th>备注</th>
        </tr>
    </thead>
    <tbody>
        <tr>
            <td>Id</td>
            <td>编号</td>
            <td>Int64</td>
            <td></td>
            <td></td>
            <td title="主键">PK</td>
            <td>N</td>
            <td></td>
        </tr>

        <tr>
            <td>NodeID</td>
            <td>节点</td>
            <td>Int32</td>
            <td></td>
            <td></td>
            <td></td>
            <td>N</td>
            <td></td>
        </tr>

        <tr>
            <td>Name</td>
            <td>名称</td>
            <td>String</td>
            <td>50</td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
        </tr>

        <tr>
            <td>ProvinceID</td>
            <td>省份</td>
            <td>Int32</td>
            <td></td>
            <td></td>
            <td></td>
            <td>N</td>
            <td></td>
        </tr>

        <tr>
            <td>CityID</td>
            <td>城市</td>
            <td>Int32</td>
            <td></td>
            <td></td>
            <td></td>
            <td>N</td>
            <td></td>
        </tr>

        <tr>
            <td>Action</td>
            <td>操作</td>
            <td>String</td>
            <td>50</td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
        </tr>

        <tr>
            <td>Success</td>
            <td>成功</td>
            <td>Boolean</td>
            <td></td>
            <td></td>
            <td></td>
            <td>N</td>
            <td></td>
        </tr>

        <tr>
            <td>Version</td>
            <td>版本</td>
            <td>String</td>
            <td>50</td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
        </tr>

        <tr>
            <td>CompileTime</td>
            <td>编译时间</td>
            <td>DateTime</td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
        </tr>

        <tr>
            <td>TraceId</td>
            <td>追踪</td>
            <td>String</td>
            <td>50</td>
            <td></td>
            <td></td>
            <td></td>
            <td>最新一次查看采样,可用于关联多个片段,建立依赖关系,随线程上下文、Http、Rpc传递</td>
        </tr>

        <tr>
            <td>Creator</td>
            <td>创建者</td>
            <td>String</td>
            <td>50</td>
            <td></td>
            <td></td>
            <td></td>
            <td>服务端节点</td>
        </tr>

        <tr>
            <td>CreateTime</td>
            <td>创建时间</td>
            <td>DateTime</td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
        </tr>

        <tr>
            <td>CreateIP</td>
            <td>创建地址</td>
            <td>String</td>
            <td>50</td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
        </tr>

        <tr>
            <td>Content</td>
            <td>内容</td>
            <td>String</td>
            <td>2000</td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
        </tr>
    </tbody>
</table>
<br></br>
<h3>节点数据(NodeData)</h3>
<table>
    <thead>
        <tr>
            <th>名称</th>
            <th>显示名</th>
            <th>类型</th>
            <th>长度</th>
            <th>精度</th>
            <th>主键</th>
            <th>允许空</th>
            <th>备注</th>
        </tr>
    </thead>
    <tbody>
        <tr>
            <td>Id</td>
            <td>编号</td>
            <td>Int64</td>
            <td></td>
            <td></td>
            <td title="主键">PK</td>
            <td>N</td>
            <td></td>
        </tr>

        <tr>
            <td>NodeID</td>
            <td>节点</td>
            <td>Int32</td>
            <td></td>
            <td></td>
            <td></td>
            <td>N</td>
            <td></td>
        </tr>

        <tr>
            <td>Name</td>
            <td>名称</td>
            <td>String</td>
            <td>50</td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
        </tr>

        <tr>
            <td>AvailableMemory</td>
            <td>可用内存</td>
            <td>Int32</td>
            <td></td>
            <td></td>
            <td></td>
            <td>N</td>
            <td>单位M</td>
        </tr>

        <tr>
            <td>AvailableFreeSpace</td>
            <td>可用磁盘</td>
            <td>Int32</td>
            <td></td>
            <td></td>
            <td></td>
            <td>N</td>
            <td>应用所在盘,单位M</td>
        </tr>

        <tr>
            <td>CpuRate</td>
            <td>CPU率</td>
            <td>Double</td>
            <td></td>
            <td></td>
            <td></td>
            <td>N</td>
            <td>占用率</td>
        </tr>

        <tr>
            <td>Temperature</td>
            <td>温度</td>
            <td>Double</td>
            <td></td>
            <td></td>
            <td></td>
            <td>N</td>
            <td></td>
        </tr>

        <tr>
            <td>Battery</td>
            <td>电量</td>
            <td>Double</td>
            <td></td>
            <td></td>
            <td></td>
            <td>N</td>
            <td></td>
        </tr>

        <tr>
            <td>Signal</td>
            <td>信号</td>
            <td>Int32</td>
            <td></td>
            <td></td>
            <td></td>
            <td>N</td>
            <td>信号强度,WiFi/4G</td>
        </tr>

        <tr>
            <td>UplinkSpeed</td>
            <td>上行速度</td>
            <td>Int64</td>
            <td></td>
            <td></td>
            <td></td>
            <td>N</td>
            <td>网络发送速度,字节每秒</td>
        </tr>

        <tr>
            <td>DownlinkSpeed</td>
            <td>下行速度</td>
            <td>Int64</td>
            <td></td>
            <td></td>
            <td></td>
            <td>N</td>
            <td>网络接收速度,字节每秒</td>
        </tr>

        <tr>
            <td>ProcessCount</td>
            <td>进程数</td>
            <td>Int32</td>
            <td></td>
            <td></td>
            <td></td>
            <td>N</td>
            <td></td>
        </tr>

        <tr>
            <td>TcpConnections</td>
            <td>连接数</td>
            <td>Int32</td>
            <td></td>
            <td></td>
            <td></td>
            <td>N</td>
            <td>传输数据Established的Tcp网络连接数</td>
        </tr>

        <tr>
            <td>TcpTimeWait</td>
            <td>主动关闭</td>
            <td>Int32</td>
            <td></td>
            <td></td>
            <td></td>
            <td>N</td>
            <td>主动关闭后TimeWait的Tcp网络连接数,等待2MSL,确保四次挥手的最后一个ACK能够发出,下一步Closed</td>
        </tr>

        <tr>
            <td>TcpCloseWait</td>
            <td>被动关闭</td>
            <td>Int32</td>
            <td></td>
            <td></td>
            <td></td>
            <td>N</td>
            <td>作为客户端,收到服务器FIN后进入CloseWait的Tcp网络连接数,还没发送自己的FIN,主要原因是我方太忙</td>
        </tr>

        <tr>
            <td>Delay</td>
            <td>延迟</td>
            <td>Int32</td>
            <td></td>
            <td></td>
            <td></td>
            <td>N</td>
            <td>网络延迟,客户端最近一次心跳耗时的一半,单位ms</td>
        </tr>

        <tr>
            <td>Offset</td>
            <td>偏移</td>
            <td>Int32</td>
            <td></td>
            <td></td>
            <td></td>
            <td>N</td>
            <td>客户端UTC时间减服务端UTC时间,单位ms</td>
        </tr>

        <tr>
            <td>LocalTime</td>
            <td>本地时间</td>
            <td>DateTime</td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
        </tr>

        <tr>
            <td>Uptime</td>
            <td>开机时间</td>
            <td>Int32</td>
            <td></td>
            <td></td>
            <td></td>
            <td>N</td>
            <td>单位s</td>
        </tr>

        <tr>
            <td>Creator</td>
            <td>创建者</td>
            <td>String</td>
            <td>50</td>
            <td></td>
            <td></td>
            <td></td>
            <td>服务端节点</td>
        </tr>

        <tr>
            <td>CreateTime</td>
            <td>创建时间</td>
            <td>DateTime</td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
        </tr>

        <tr>
            <td>CreateIP</td>
            <td>创建地址</td>
            <td>String</td>
            <td>50</td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
        </tr>
    </tbody>
</table>
<br></br>
<h3>节点版本(NodeVersion)</h3>
<table>
    <thead>
        <tr>
            <th>名称</th>
            <th>显示名</th>
            <th>类型</th>
            <th>长度</th>
            <th>精度</th>
            <th>主键</th>
            <th>允许空</th>
            <th>备注</th>
        </tr>
    </thead>
    <tbody>
        <tr>
            <td>ID</td>
            <td>编号</td>
            <td>Int32</td>
            <td></td>
            <td></td>
            <td title="自增">AI</td>
            <td>N</td>
            <td></td>
        </tr>

        <tr>
            <td>Version</td>
            <td>版本号</td>
            <td>String</td>
            <td>50</td>
            <td></td>
            <td title="唯一索引">UQ</td>
            <td></td>
            <td></td>
        </tr>

        <tr>
            <td>ProductCode</td>
            <td>产品</td>
            <td>String</td>
            <td>50</td>
            <td></td>
            <td></td>
            <td></td>
            <td>产品编码,用于区分不同类型节点</td>
        </tr>

        <tr>
            <td>Enable</td>
            <td>启用</td>
            <td>Boolean</td>
            <td></td>
            <td></td>
            <td></td>
            <td>N</td>
            <td>启用/停用</td>
        </tr>

        <tr>
            <td>Force</td>
            <td>强制</td>
            <td>Boolean</td>
            <td></td>
            <td></td>
            <td></td>
            <td>N</td>
            <td>强制升级</td>
        </tr>

        <tr>
            <td>Channel</td>
            <td>升级通道</td>
            <td>Int32</td>
            <td></td>
            <td></td>
            <td></td>
            <td>N</td>
            <td></td>
        </tr>

        <tr>
            <td>Strategy</td>
            <td>策略</td>
            <td>String</td>
            <td>500</td>
            <td></td>
            <td></td>
            <td></td>
            <td>升级策略,版本特别支持大于等于和小于等于,node=*abcd*;version>=1.0;runtime/framework/os/oskind/arch/province/city</td>
        </tr>

        <tr>
            <td>Source</td>
            <td>升级源</td>
            <td>String</td>
            <td>200</td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
        </tr>

        <tr>
            <td>Size</td>
            <td>文件大小</td>
            <td>Int64</td>
            <td></td>
            <td></td>
            <td></td>
            <td>N</td>
            <td></td>
        </tr>

        <tr>
            <td>FileHash</td>
            <td>文件哈希</td>
            <td>String</td>
            <td>50</td>
            <td></td>
            <td></td>
            <td></td>
            <td>MD5散列</td>
        </tr>

        <tr>
            <td>Preinstall</td>
            <td>预安装命令</td>
            <td>String</td>
            <td>200</td>
            <td></td>
            <td></td>
            <td></td>
            <td>更新前要执行的命令,解压缩后,在解压缩目录执行</td>
        </tr>

        <tr>
            <td>Executor</td>
            <td>执行命令</td>
            <td>String</td>
            <td>200</td>
            <td></td>
            <td></td>
            <td></td>
            <td>空格前后为文件名和参数</td>
        </tr>

        <tr>
            <td>CreateUserID</td>
            <td>创建者</td>
            <td>Int32</td>
            <td></td>
            <td></td>
            <td></td>
            <td>N</td>
            <td></td>
        </tr>

        <tr>
            <td>CreateTime</td>
            <td>创建时间</td>
            <td>DateTime</td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
        </tr>

        <tr>
            <td>CreateIP</td>
            <td>创建地址</td>
            <td>String</td>
            <td>50</td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
        </tr>

        <tr>
            <td>UpdateUserID</td>
            <td>更新者</td>
            <td>Int32</td>
            <td></td>
            <td></td>
            <td></td>
            <td>N</td>
            <td></td>
        </tr>

        <tr>
            <td>UpdateTime</td>
            <td>更新时间</td>
            <td>DateTime</td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
        </tr>

        <tr>
            <td>UpdateIP</td>
            <td>更新地址</td>
            <td>String</td>
            <td>50</td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
        </tr>

        <tr>
            <td>Description</td>
            <td>描述</td>
            <td>String</td>
            <td>500</td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
        </tr>
    </tbody>
</table>
<br></br>
<h3>节点命令(NodeCommand)</h3>
<table>
    <thead>
        <tr>
            <th>名称</th>
            <th>显示名</th>
            <th>类型</th>
            <th>长度</th>
            <th>精度</th>
            <th>主键</th>
            <th>允许空</th>
            <th>备注</th>
        </tr>
    </thead>
    <tbody>
        <tr>
            <td>Id</td>
            <td>编号</td>
            <td>Int32</td>
            <td></td>
            <td></td>
            <td title="自增">AI</td>
            <td>N</td>
            <td></td>
        </tr>

        <tr>
            <td>NodeID</td>
            <td>节点</td>
            <td>Int32</td>
            <td></td>
            <td></td>
            <td></td>
            <td>N</td>
            <td></td>
        </tr>

        <tr>
            <td>Command</td>
            <td>命令</td>
            <td>String</td>
            <td>50</td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
        </tr>

        <tr>
            <td>Argument</td>
            <td>参数</td>
            <td>String</td>
            <td>500</td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
        </tr>

        <tr>
            <td>StartTime</td>
            <td>开始执行时间</td>
            <td>DateTime</td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
            <td>用于提前下发指令后延期执行,暂时不支持取消</td>
        </tr>

        <tr>
            <td>Expire</td>
            <td>过期时间</td>
            <td>DateTime</td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
            <td>未指定时表示不限制</td>
        </tr>

        <tr>
            <td>Status</td>
            <td>状态</td>
            <td>Int32</td>
            <td></td>
            <td></td>
            <td></td>
            <td>N</td>
            <td>命令状态</td>
        </tr>

        <tr>
            <td>Times</td>
            <td>次数</td>
            <td>Int32</td>
            <td></td>
            <td></td>
            <td></td>
            <td>N</td>
            <td>一共执行多少次,超过10次后取消</td>
        </tr>

        <tr>
            <td>Result</td>
            <td>结果</td>
            <td>String</td>
            <td>500</td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
        </tr>

        <tr>
            <td>TraceId</td>
            <td>追踪</td>
            <td>String</td>
            <td>50</td>
            <td></td>
            <td></td>
            <td></td>
            <td>最新一次查看采样,可用于关联多个片段,建立依赖关系,随线程上下文、Http、Rpc传递</td>
        </tr>

        <tr>
            <td>CreateUser</td>
            <td>创建者</td>
            <td>String</td>
            <td>50</td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
        </tr>

        <tr>
            <td>CreateUserID</td>
            <td>创建者</td>
            <td>Int32</td>
            <td></td>
            <td></td>
            <td></td>
            <td>N</td>
            <td></td>
        </tr>

        <tr>
            <td>CreateTime</td>
            <td>创建时间</td>
            <td>DateTime</td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
        </tr>

        <tr>
            <td>CreateIP</td>
            <td>创建地址</td>
            <td>String</td>
            <td>50</td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
        </tr>

        <tr>
            <td>UpdateUserID</td>
            <td>更新者</td>
            <td>Int32</td>
            <td></td>
            <td></td>
            <td></td>
            <td>N</td>
            <td></td>
        </tr>

        <tr>
            <td>UpdateTime</td>
            <td>更新时间</td>
            <td>DateTime</td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
        </tr>

        <tr>
            <td>UpdateIP</td>
            <td>更新地址</td>
            <td>String</td>
            <td>50</td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
        </tr>
    </tbody>
</table>
<br></br>
<h3>节点统计(NodeStat)</h3>
<table>
    <thead>
        <tr>
            <th>名称</th>
            <th>显示名</th>
            <th>类型</th>
            <th>长度</th>
            <th>精度</th>
            <th>主键</th>
            <th>允许空</th>
            <th>备注</th>
        </tr>
    </thead>
    <tbody>
        <tr>
            <td>ID</td>
            <td>编号</td>
            <td>Int32</td>
            <td></td>
            <td></td>
            <td title="自增">AI</td>
            <td>N</td>
            <td></td>
        </tr>

        <tr>
            <td>Category</td>
            <td>类别</td>
            <td>String</td>
            <td>50</td>
            <td></td>
            <td></td>
            <td></td>
            <td>业务方向分类,例如操作系统占比</td>
        </tr>

        <tr>
            <td>StatDate</td>
            <td>统计日期</td>
            <td>DateTime</td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
        </tr>

        <tr>
            <td>Key</td>
            <td>统计项</td>
            <td>String</td>
            <td>50</td>
            <td></td>
            <td></td>
            <td></td>
            <td>统计项编码</td>
        </tr>

        <tr>
            <td>LinkItem</td>
            <td>关联项</td>
            <td>String</td>
            <td>50</td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
        </tr>

        <tr>
            <td>Total</td>
            <td>总数</td>
            <td>Int32</td>
            <td></td>
            <td></td>
            <td></td>
            <td>N</td>
            <td>1年内活跃过的全部节点数</td>
        </tr>

        <tr>
            <td>Actives</td>
            <td>活跃数</td>
            <td>Int32</td>
            <td></td>
            <td></td>
            <td></td>
            <td>N</td>
            <td>最后活跃位于今天</td>
        </tr>

        <tr>
            <td>ActivesT7</td>
            <td>7天活跃数</td>
            <td>Int32</td>
            <td></td>
            <td></td>
            <td></td>
            <td>N</td>
            <td>最后活跃位于7天内</td>
        </tr>

        <tr>
            <td>ActivesT30</td>
            <td>30天活跃数</td>
            <td>Int32</td>
            <td></td>
            <td></td>
            <td></td>
            <td>N</td>
            <td>最后活跃位于30天内</td>
        </tr>

        <tr>
            <td>News</td>
            <td>新增数</td>
            <td>Int32</td>
            <td></td>
            <td></td>
            <td></td>
            <td>N</td>
            <td>今天创建</td>
        </tr>

        <tr>
            <td>NewsT7</td>
            <td>7天新增数</td>
            <td>Int32</td>
            <td></td>
            <td></td>
            <td></td>
            <td>N</td>
            <td>7天创建</td>
        </tr>

        <tr>
            <td>NewsT30</td>
            <td>30天新增数</td>
            <td>Int32</td>
            <td></td>
            <td></td>
            <td></td>
            <td>N</td>
            <td>30天创建</td>
        </tr>

        <tr>
            <td>CreateTime</td>
            <td>创建时间</td>
            <td>DateTime</td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
        </tr>

        <tr>
            <td>UpdateTime</td>
            <td>更新时间</td>
            <td>DateTime</td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
        </tr>

        <tr>
            <td>Remark</td>
            <td>备注</td>
            <td>String</td>
            <td>500</td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
        </tr>
    </tbody>
</table>
<br></br>
<h3>节点规则(NodeRule)</h3>
<table>
    <thead>
        <tr>
            <th>名称</th>
            <th>显示名</th>
            <th>类型</th>
            <th>长度</th>
            <th>精度</th>
            <th>主键</th>
            <th>允许空</th>
            <th>备注</th>
        </tr>
    </thead>
    <tbody>
        <tr>
            <td>Id</td>
            <td>编号</td>
            <td>Int32</td>
            <td></td>
            <td></td>
            <td title="自增">AI</td>
            <td>N</td>
            <td></td>
        </tr>

        <tr>
            <td>Rule</td>
            <td>规则</td>
            <td>String</td>
            <td>50</td>
            <td></td>
            <td></td>
            <td></td>
            <td>支持*模糊匹配,比如10.0.*</td>
        </tr>

        <tr>
            <td>Name</td>
            <td>名称</td>
            <td>String</td>
            <td>50</td>
            <td></td>
            <td></td>
            <td></td>
            <td>匹配规则的节点所应该具有的名称</td>
        </tr>

        <tr>
            <td>Category</td>
            <td>分类</td>
            <td>String</td>
            <td>50</td>
            <td></td>
            <td></td>
            <td></td>
            <td>匹配规则的节点所应该具有的分类</td>
        </tr>

        <tr>
            <td>Enable</td>
            <td>启用</td>
            <td>Boolean</td>
            <td></td>
            <td></td>
            <td></td>
            <td>N</td>
            <td></td>
        </tr>

        <tr>
            <td>Priority</td>
            <td>优先级</td>
            <td>Int32</td>
            <td></td>
            <td></td>
            <td></td>
            <td>N</td>
            <td>数字越大优先级越高</td>
        </tr>

        <tr>
            <td>NewNode</td>
            <td>新节点</td>
            <td>Boolean</td>
            <td></td>
            <td></td>
            <td></td>
            <td>N</td>
            <td>新匹配IP如果不存在节点,则新建节点</td>
        </tr>

        <tr>
            <td>CreateUserID</td>
            <td>创建者</td>
            <td>Int32</td>
            <td></td>
            <td></td>
            <td></td>
            <td>N</td>
            <td></td>
        </tr>

        <tr>
            <td>CreateTime</td>
            <td>创建时间</td>
            <td>DateTime</td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
        </tr>

        <tr>
            <td>CreateIP</td>
            <td>创建地址</td>
            <td>String</td>
            <td>50</td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
        </tr>

        <tr>
            <td>UpdateUserID</td>
            <td>更新者</td>
            <td>Int32</td>
            <td></td>
            <td></td>
            <td></td>
            <td>N</td>
            <td></td>
        </tr>

        <tr>
            <td>UpdateTime</td>
            <td>更新时间</td>
            <td>DateTime</td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
        </tr>

        <tr>
            <td>UpdateIP</td>
            <td>更新地址</td>
            <td>String</td>
            <td>50</td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
        </tr>

        <tr>
            <td>Remark</td>
            <td>备注</td>
            <td>String</td>
            <td>500</td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
        </tr>
    </tbody>
</table>
<br></br>