Linux服务器监听运维功能.md 42.4 KB

1. 基础资源占用

1.1 获取指定module的输出

调用方式 接口地址
POST http://ip:port/occupationOfBasicResources/getInfoByModule
Content-Type application/json;charset=UTF-8
请求参数
参数项 名称 类型 必选 描述
module 功能编码 string
请求示例
{
    "module": "disk_partitions"
}
返回结果
参数项 名称 类型 描述
code 响应码 int 200为操作成功,其他code表示失败
message 提示信息 string 返回提示信息
data 返回信息 string 200,返回操作成功;其他code对应失败信息
响应示例
{
    "code": 200,
    "message": "操作成功",
    "data": []// 对应module返回内容信息
}

1.2 jar包发布

调用方式 接口地址
POST http://ip:port/occupationOfBasicResources/deployJarFile
Content-Type application/json;charset=UTF-8
请求参数
参数项 名称 类型 必选 描述
filePath jar包保存位置 string jar包保存位置
logPath 日志输出位置 string 默认jar包相同位置名称和jar包文件名相同
user 用户信息 string 用户信息(权限用, 默认-1, 表示超级管理员权限)
startListen 是否开启监听 int 传1 表示直接开始监听
请求示例
{
    "filePath": "/home/liuhaoyu/linuxTest/linuxTest-1.0-SNAPSHOT.jar",
    "logPath": "/home/liuhaoyu/linuxTest/linuxTest.log",
    "user": "1",
    "startListen": "1"
}
返回结果
参数项 名称 类型 描述
code 响应码 int 200为操作成功,其他code表示失败
message 提示信息 string 返回提示信息
data 返回信息 string 发布包对应的进程id
响应示例
{
    "code": 200,
    "message": "操作成功",
    "data": {
        "taskId" : "12390"
    }
}

1.3 获取当前进行中的java服务

调用方式 接口地址
POST http://ip:port/occupationOfBasicResources/getJpsInfo
Content-Type application/json;charset=UTF-8
返回结果
参数项 名称 类型 描述
code 响应码 int 200为操作成功,其他code表示失败
message 提示信息 string 返回提示信息
data 返回信息 string
+process 线程信息 string[] 对应的进程信息
响应示例
{
    "code": 200,
    "message": "操作成功",
    "data": {
        "process": [
            "39921 Jps",
            "39864 linuxListener-0.0.1-SNAPSHOT.jar"
        ]
    }
}

1.4 停止jar包进程

调用方式 接口地址
POST http://ip:port/occupationOfBasicResources/killJarTask
Content-Type application/json;charset=UTF-8
请求参数
参数项 名称 类型 必选 描述
taskId 进程号 string 需要停止的进程号
user 用户信息 string 用户信息(做权限控制用)
请求示例
{
    "user": "-1",
    "taskId": "37527"
}
返回结果
参数项 名称 类型 描述
code 响应码 int 200为操作成功,其他code表示失败
message 提示信息 string 200为操作成功, 其他为对应错误信息
data 返回信息
响应示例
{
    "code": 200,
    "message": "操作成功",
    "data": {}
}

1.5 配置启动服务

1.5.1 创建

调用方式 接口地址
POST http://ip:port/background/createService
Content-Type application/json;charset=UTF-8
请求参数
参数项 名称 类型 必选 描述
config 配置内容
+serviceName 服务名称 string 服务名称
items 配置参数信息
+itemName 配置参数名称 string 配置参数名称
+itemValue 配置参数值 string 配置参数值
+sort 配置参数顺序 Integer 参数显示的顺序
请求示例
{
    "config":{
        "serviceName" : "test service 1"
    },
    "items":[{
        "itemName" : "port",
        "itemValue" : 3000,
        "sort" : 1
    }]
}
返回结果
参数项 名称 类型 描述
code 响应码 int 200为操作成功,其他code表示失败
message 提示信息 string 200为操作成功, 其他为对应错误信息
data 返回信息
响应示例
{
    "code": 200,
    "message": "操作成功",
    "data": {}
}

1.5.2 更新

调用方式 接口地址
POST http://ip:port/background/updateService
Content-Type application/json;charset=UTF-8
请求参数
参数项 名称 类型 必选 描述
config 配置内容
+id 服务主键 Integer 主键
+serviceName 服务名称 string 服务名称
items 配置参数信息
+itemName 配置参数名称 string 配置参数名称
+itemValue 配置参数值 string 配置参数值
+sort 配置参数顺序 Integer 参数显示的顺序
请求示例
{
    "config": {
        "id": 1,
        "serviceName": "1111"
    }
    "items": [
        {"itemName": "1111",
        "itemValue": "13",
        "sort": 1},
        ...
    ]
}
返回结果
参数项 名称 类型 描述
code 响应码 int 200为操作成功,其他code表示失败
message 提示信息 string 200为操作成功, 其他为对应错误信息
data 返回信息
响应示例
{
    "code": 200,
    "message": "操作成功",
    "data": {}
}

1.5.3 删除

调用方式 接口地址
POST http://ip:port/background/deleteService
Content-Type application/json;charset=UTF-8
请求参数
参数项 名称 类型 必选 描述
id 服务主键 Integer 主键(formdata形式)
请求示例
"id": 1
返回结果
参数项 名称 类型 描述
code 响应码 int 200为操作成功,其他code表示失败
message 提示信息 string 200为操作成功, 其他为对应错误信息
data 返回信息
响应示例
{
    "code": 200,
    "message": "操作成功",
    "data": {}
}

1.5.4 操作已经配置好的服务

调用方式 接口地址
POST http://ip:port/background/serviceAction
Content-Type application/json;charset=UTF-8
请求参数
参数项 名称 类型 必选 描述
id 服务主键 Integer 主键(formdata形式)
action 操作类型 String start/status/restart/stop/remove/load(formdata形式)
请求示例
"id": 1
"action": "start"
返回结果
参数项 名称 类型 描述
code 响应码 int 200为操作成功,其他code表示失败
message 提示信息 string 200为操作成功, 其他为对应错误信息
data 返回信息
result 操作结果 string 操作成功或者失败原因
响应示例
{
    "code": 200,
    "message": "操作成功",
    "data": {}
}

1.5.5 获取配置服务支持的所有接口信息

调用方式 接口地址
POST http://ip:port/background/findAllAvailableInterface
Content-Type application/json;charset=UTF-8
请求参数
参数项 名称 类型 必选 描述
configId 服务主键 Integer 主键(formdata形式)
请求示例
"configId": 1
返回结果
参数项 名称 类型 描述
code 响应码 int 200为操作成功,其他code表示失败
message 提示信息 string 200为操作成功, 其他为对应错误信息
data 返回信息
+id 主键 int 主键
+mouldId 模板id int 模板id
+methodType 请求方式类型 string 请求方式类型
+contentType 请求头参数类型 string 请求头参数类型
+uri 请求地址 string 请求地址
+defaultJson 默认请求参数(json串) string 默认请求参数(json串)
+sort 排序 int 排序
响应示例
{
    "code": 200,
    "message": "操作成功",
    "data": [
        {
            "id": 1,
            "mouldId": 1,
            "methodType": "post",
            "contentType": "application/json;charset=UTF-8",
            "uri": "/vehicle/base64",
            "defaultJson": "{"TPXX":"#base64#"}",
            "sort": 1
        }
    ]
}

1.5.6 根据配置明细项id获取请求http的返回值信息

调用方式 接口地址
POST http://ip:port/background/getServiceHttpResponse
Content-Type application/json;charset=UTF-8
请求参数
参数项 名称 类型 必选 描述
configId 配置服务id Integer 配置服务id (param格式)
interfaceMouldId 接口id Integer 接口id (param格式)
params 请求参数信息 string 如果是需要文件传入对应参数部分写入"#file#"
multipartFile 文件信息 string 文件信息 (param格式)
请求示例
"configId": 1
"interfaceMouldId": "start",
"params": "{"TPXX":"#file#"}",
"multipartFile": xxx
返回结果
参数项 名称 类型 描述
code 响应码 int 200为操作成功,其他code表示失败
message 提示信息 string 200为操作成功, 其他为对应错误信息
data 返回信息
result 操作结果 string 操作成功信息或者失败原因
响应示例
{
    "code": 200,
    "message": "操作成功",
    "data": {}
}

1.6 查询配置好的服务运行情况

调用方式 接口地址
POST http://ip:port/background/serviceQuery
Content-Type application/json;charset=UTF-8
请求参数
参数项 名称 类型 必选 描述
currentPage 页码 Integer 页码(formdata形式)
pageVolume 页面容量 Integer 页面容量(formdata形式)
请求示例
{
    "currentPage": 1,
    "pageVolume": 20
}
返回结果
参数项 名称 类型 描述
code 响应码 int 200为操作成功,其他code表示失败
message 提示信息 string 200为操作成功, 其他为对应错误信息
data 返回信息
+gpuId 显卡id String 显卡id
+port ip和端口号 String ip和端口号
+items 配置项 String 配置项
+status 运行状态 String 运行状态
+updateTime 最后更新时间 String 最后更新时间
响应示例
{
    "code": 200,
    "message": "操作成功",
    "data": [
        {
            "gpuId": "1", 
            "port":"192.168.10.117:8845", 
            "items":"1,2,3,4,5,6", 
            "status":"0",
            "updateTime":"2019-12-24 10:13:00"
        },
        ...
    ]
}

1.7 获取GPU的列表

调用方式 接口地址
POST http://ip:port/occupationOfBasicResources/getGpuItems
Content-Type application/json;charset=UTF-8
返回结果
参数项 名称 类型 描述
code 响应码 int 200为操作成功,其他code表示失败
message 提示信息 string 200为操作成功, 其他为对应错误信息
data 返回信息
+uuid GPU对应uuid String GPU对应uuid
+index gpu编号 String gpu编号
+gpuName GPU名称 String GPU名称
响应示例
{
    "code": 200,
    "message": "操作成功",
    "data": [
        {
            "gpuName": "GeForce GTX 1080 Ti",
            "index": "GPU 0",
            "uuid": " GPU-99b735ea-99c6-a569-fadb-01f39ae045f7"
        },
        {
            "gpuName": "GeForce RTX 2080",
            "index": "GPU 1",
            "uuid": " GPU-c8f60855-479c-6658-16d1-140dac044159"
        },
        {
            "gpuName": "Tesla P4",
            "index": "GPU 2",
            "uuid": " GPU-0d60b67b-8df9-e3bb-2aa0-c632b1726ef1"
        },
        {
            "gpuName": "Tesla P4",
            "index": "GPU 3",
            "uuid": " GPU-95e656d9-fbe3-b17c-3f37-a05814bbcc79"
        }
    ]
}

2. 日志监控

2.1 设置log文件所在位置信息

调用方式 接口地址
POST http://ip:port/logListener/setLogMsg
Content-Type application/json;charset=UTF-8
请求参数
参数项 名称 类型 必选 描述
filePath 日志文件存在位置 string 日志文件存在位置
请求示例
{
    "filePath": "/home/liuhaoyu/linuxTest.log"
}
返回结果
参数项 名称 类型 描述
code 响应码 int 200为操作成功,其他code表示失败
message 提示信息 string 200为操作成功, 其他为对应错误信息
data 返回信息
+logKey 监听用日志key String 监听用日志key
响应示例
{
    "code": 200,
    "message": "操作成功",
    "data": {
        "logKey": "linuxTest-1.0-SNAPSHOT.log|1575596806840"
    }
}

2.2 开启日志监控输出

调用方式 接口地址
POST http://ip:port/logListener/startLogListener
Content-Type application/json;charset=UTF-8
请求参数
参数项 名称 类型 必选 描述
logKey 监听用日志key string 监听用日志key
请求示例
{
    "logKey": "linuxTest-1.0-SNAPSHOT.log|1575596806840"
}
返回结果
参数项 名称 类型 描述
code 响应码 int 200为操作成功,其他code表示失败
message 提示信息 string 200为操作成功, 其他为对应错误信息
data 返回信息
响应示例
{
    "code": 200,
    "message": "操作成功",
    "data": null
}

2.3 获取日志的输出内容

调用方式 接口地址
POST http://ip:port/logListener/getLogOutput
Content-Type application/json;charset=UTF-8
请求参数
参数项 名称 类型 必选 描述
logKey 监听用日志key string 监听用日志key
请求示例
{
    "logKey": "linuxTest-1.0-SNAPSHOT.log|1575596806840"
}
返回结果
参数项 名称 类型 描述
code 响应码 int 200为操作成功,其他code表示失败
message 提示信息 string 200为操作成功, 其他为对应错误信息
data 返回信息 String 时间段内日志的具体输出
响应示例
{
    "code": 200,
    "message": "操作成功",
    "data": "0\n****************swapUse*****************\n6810\n*****************memUse*****************\n执行命令[ cat /proc/meminfo]\n0\n****************swapUse*****************\n6808\n*****************memUse*****************\n执行命令[ cat /proc/meminfo]\n0\n****************swapUse*****************\n6806\n*****************memUse*****************\n执行命令[ cat /proc/meminfo]\n0\n****************swapUse*****************\n6804\n*****************memUse*****************\n执行命令[ cat /proc/meminfo]\n0\n****************swapUse*****************\n6799\n*****************memUse*****************\n执行命令[ cat /proc/meminfo]"
}

2.4 停止日志监控输出

调用方式 接口地址
POST http://ip:port/logListener/stopLogListener
Content-Type application/json;charset=UTF-8
请求参数
参数项 名称 类型 必选 描述
logKey 监听用日志key string 监听用日志key
请求示例
{
    "logKey": "linuxTest-1.0-SNAPSHOT.log|1575596806840"
}
返回结果
参数项 名称 类型 描述
code 响应码 int 200为操作成功,其他code表示失败
message 提示信息 string 200为操作成功, 其他为对应错误信息
data 返回信息
响应示例
{
    "code": 200,
    "message": "操作成功",
    "data": null
}

2.5 获取所有正在监听中的日志

调用方式 接口地址
POST http://ip:port/logListener/getAllListeningLog
Content-Type application/json;charset=UTF-8
返回结果
参数项 名称 类型 描述
code 响应码 int 200为操作成功,其他code表示失败
message 提示信息 string 200为操作成功, 其他为对应错误信息
data 返回信息 数组
+logKey 日志存在的key string 日志存在的key
+logPath 日志位置 string 日志位置
响应示例
{
    "code": 200,
    "message": "操作成功",
    "data": [
        {
            "logKey": "linuxTest-1.0-SNAPSHOT-1575604486338.log|1575604486582",
            "logPath": "/home/.../linuxTest/linuxTest-1.0-SNAPSHOT-1575604486338.log"
        }
    ]
}

2.6 下载日志文件

调用方式 接口地址
POST http://ip:port/logListener/download
Content-Type application/json;charset=UTF-8
请求参数
参数项 名称 类型 必选 描述
logKey 监听用日志key string 监听用日志key(formdata格式)
返回结果
参数项 名称 类型 描述
code 响应码 int 200为操作成功,其他code表示失败(成功时会直接开启下载)
message 提示信息 string 200为操作成功, 其他为对应错误信息
data 返回信息
响应示例
{
    "code": 200,
    "message": "操作成功",
    "data": {}
}

3. 监控器调度

3.1 获取正在生效的监控功能

调用方式 接口地址
POST http://ip:port/background/getWorkingListener
Content-Type application/json;charset=UTF-8
返回结果
参数项 名称 类型 描述
code 响应码 int 200为操作成功,其他code表示失败
message 提示信息 string 200为操作成功, 其他为对应错误信息
data 返回信息
+result 生效中的监控功能 String[] 生效中的监控功能
响应示例
{
    "code": 200,
    "message": "操作成功",
    "data": {
        "result": [
            "cpu_utilization",
            "memory_info"
        ]
    }
}

3.2 添加新的监控器

调用方式 接口地址
POST http://ip:port/background/addWorkingListener
Content-Type application/json;charset=UTF-8
请求参数
参数项 名称 类型 必选 描述
modules 添加到监听的功能id string[] 添加到监听的功能id
请求示例
{
    "modules": ["cpu_utilization", "memory_info"]
}
返回结果
参数项 名称 类型 描述
code 响应码 int 200为操作成功,其他code表示失败
message 提示信息 string 200为操作成功, 其他为对应错误信息
data 返回信息
响应示例
{
    "code": 200,
    "message": "操作成功",
    "data": {}
}

3.3 删除存在的监控器

调用方式 接口地址
POST http://ip:port/background/removeWorkingListener
Content-Type application/json;charset=UTF-8
请求参数
参数项 名称 类型 必选 描述
modules 停止监听的功能id string[] 停止监听的功能id
请求示例
{
    "modules": ["cpu_utilization", "memory_info"]
}
返回结果
参数项 名称 类型 描述
code 响应码 int 200为操作成功,其他code表示失败
message 提示信息 string 200为操作成功, 其他为对应错误信息
data 返回信息
响应示例
{
    "code": 200,
    "message": "操作成功",
    "data": {}
}

3.4 获取module对应的内容

调用方式 接口地址
POST http://ip:port/background/getModuleInfo
Content-Type application/json;charset=UTF-8
请求参数
参数项 名称 类型 必选 描述
modules 功能id string 功能id
startTime 开始时间 long 开始时间戳
endTime 结束时间 long 结束时间戳
请求示例
{
    "module": "cpu_utilization",
    "startTime": 1575599542344,
    "endTime": 1575599545346
}
返回结果
参数项 名称 类型 描述
code 响应码 int 200为操作成功,其他code表示失败
message 提示信息 string 200为操作成功, 其他为对应错误信息
data 返回信息
+id 主键 string 主键
+moduleId 功能id string 功能id
+occurrenceTime 数据获取时间 long 数据获取时间
+occupancy 占用率 double 占用率
响应示例
{
    "code": 200,
    "message": "操作成功",
    "data": [
        {
            "id": "1",
            "moduleId": "cpu_utilization",
            "occurrenceTime": 1575599542344,
            "occupancy": 1.0
        },
        {
            "id": "2",
            "moduleId": "cpu_utilization",
            "occurrenceTime": 1575599545346,
            "occupancy": 4.0
        }
    ]
}   

3.5 sdk控制器

调用方式 接口地址
POST http://ip:port/background/sdkController
Content-Type application/json;charset=UTF-8
请求参数
参数项 名称 类型 必选 描述
action 操作功能 string 操作功能
vehicle_car_win_detect_config 是否启动车车窗检测 int 0:关闭 1:开启
vehicle_recg_config 是否启动车型识别 int 0:关闭 1:开启
vehicle_plate_det_recg_config 是否启动车牌检测识别 int 0:关闭 1:开启
vehicle_color_config 是否启动车辆颜色识别 int 0:关闭 1:开启
vehicle_pendant_det_config 是否启动车辆属性识别 int 0:关闭 1:开启
vehicle_illegal_config 是否启动车违规行为检测 int 0:关闭 1:开启
vehicle_feature_config 是否启动车辆特征提取 long 0:关闭 1:开启
vehicle_special_config 是否启动特殊品类车型识别 int 0:关闭 1:开启
gpuId 显卡号 int 显卡号 0:关闭 1:开启
log 日志 int 日志 0:关闭 1:开启
vehicle_image_quality_config 是否启动车辆图像清晰度识别 int 0:关闭 1:开启
vehicle_motor_tricycle_analysis_config 否启动摩托车是否载人/摩托车驾驶人是否戴头盔/农用车是否载人 int 0:关闭 1:开启
port 端口号 int 端口号
请求示例
{
  "vehicle_car_win_detect_config": 1,
  "vehicle_recg_config": 1,
  "vehicle_plate_det_recg_config": 1,
  "vehicle_color_config": 1,
  "vehicle_pendant_det_config": 1,
  "vehicle_illegal_config":  1,
  "vehicle_feature_config":  1,
  "vehicle_special_config":  1,
  "gpuId": 3,
  "log": 1,
  "vehicle_image_quality_config": 1,
  "vehicle_motor_tricycle_analysis_config": 1,
  "action": "start",
  "port": 8080
}
返回结果
参数项 名称 类型 描述
code 响应码 int 200为操作成功,其他code表示失败
message 提示信息 string 200为操作成功, 其他为对应错误信息
data 返回信息
响应示例
{
    "code": 200,
    "message": "操作成功",
    "data": null
}   

4 用户控制

4.1 登录

调用方式 接口地址
POST http://ip:port/user/login
Content-Type application/json;charset=UTF-8
请求参数
参数项 名称 类型 必选 描述
username 用户名 string 用户名(param格式)
password 密码 string 密码(param格式)
请求示例
{
  "username": admin,
  "password": admin
}
返回结果
参数项 名称 类型 描述
code 响应码 int 200为操作成功,其他code表示失败
message 提示信息 string 200为操作成功, 其他为对应错误信息
data 返回信息
响应示例
{
    "code": 200,
    "message": "操作成功",
    "data": null
}   

4.2 修改密码

调用方式 接口地址
POST http://ip:port/user/changePasswd
Content-Type application/json;charset=UTF-8
请求参数
参数项 名称 类型 必选 描述
username 用户名 string 用户名(param格式)
password 新密码 string 新密码(param格式)
请求示例
{
  "username": admin,
  "password": admin
}
返回结果
参数项 名称 类型 描述
code 响应码 int 200为操作成功,其他code表示失败
message 提示信息 string 200为操作成功, 其他为对应错误信息
data 返回信息
响应示例
{
    "code": 200,
    "message": "操作成功",
    "data": null
}   

4.3 创建用户

调用方式 接口地址
POST http://ip:port/user/addUser
Content-Type application/json;charset=UTF-8
请求参数
参数项 名称 类型 必选 描述
username 用户名 string 用户名(param格式)
password 新密码 string 新密码(param格式)
请求示例
{
  "username": admin,
  "password": admin
}
返回结果
参数项 名称 类型 描述
code 响应码 int 200为操作成功,其他code表示失败
message 提示信息 string 200为操作成功, 其他为对应错误信息
data 返回信息
+id 主键 Integer 主键
响应示例
{
    "code": 200,
    "message": "操作成功",
    "data": {"id": 1}
}   

4.4 查询用户信息

调用方式 接口地址
POST http://ip:port/user/searchUsers
Content-Type application/json;charset=UTF-8
请求参数
参数项 名称 类型 必选 描述
username 用户名 string 用户名(param格式)
currentPage 页码 Integer 页码(param格式)
pageVolume 页面容量 Integer 页面容量(param格式)
请求示例
{
  "username": admin,
  "currentPage": 1,
  "pageVolume": 20
}
返回结果
参数项 名称 类型 描述
code 响应码 int 200为操作成功,其他code表示失败
message 提示信息 string 200为操作成功, 其他为对应错误信息
data 返回信息
+id 主键 Integer 主键
+username 用户名 String 用户名
+password 密码 String 密码
响应示例
{
    "code": 200,
    "message": "操作成功",
    "data": {
        "id": 1,
        "username": "admin",
        "password": "admin"
    }
}   

4.5 校验用户是否存在

调用方式 接口地址
POST http://ip:port/user/checkUser
Content-Type application/json;charset=UTF-8
请求参数
参数项 名称 类型 必选 描述
username 用户名 string 用户名(param格式)
请求示例
{
  "username": admin
}
返回结果
参数项 名称 类型 描述
code 响应码 int 200为操作成功,其他code表示失败
message 提示信息 string 200为操作成功, 其他为对应错误信息
data 返回信息
+count 存在条数 Integer 存在条数
响应示例
{
    "code": 200,
    "message": "操作成功",
    "data": {"count": 1}
}