如何使用用户账号分别管理主机和资源(提示:需升级到专业版,同时需升级到v3.3.9或以上版本)

我们在主机比较多的情况下,管理员可以创建若干个用户账号,每个账号可以登录管理自己的主机和监控资源
注意:此处的用户账号和服务器系统账号没有任何关系,不是一个概念
用户账号功能视频讲解
1、首先在server/config/application.yml中开启用户管理,如下,配置项userInfoManage改为yes,然后重启server

#是否开启使用用户账号管理(即每个用户可管理自己的资源),yes开启,no关闭,关闭后新增的用户账号不能再登录(管理员和只读账号可以登录)此功能需升级到专业版
userInfoManage: yes
	
如果此项设置为no,那么已经添加的用户账号将不能再登录系统,同时也不会收到自己资源的告警消息
如果此项设置为yes,那么已经添加的用户账号将恢复可登录系统,同时也会收到自己资源的告警消息
2、启用用户账号管理后,就可以在菜单【系统管理】->【用户账号管理】新增用户账号,新增后的用户账号都可以登录到系统,来管理自己的主机和资源
3、如何让监控主机和用户账号关联起来,修改agent/config/application.properties的配置项account,如下

#绑定用户登录账号,默认为空即绑定于管理员
account=ethan
	
ethan即新添加的用户登录账号,修改完成后,重启下agent即可,这样该主机就关联到用户ethan下了
若需要修改该主机的关联用户,修改account=新用户账号即可,该主机的进程、端口等资源也会转移到新用户名下
4、只有管理员可以维护用户登录账号信息,管理员可以看到和维护所有用户账号的监控资源信息,管理员始终拥有最高权限
只读账号也可以浏览所有用户的监控资源信息,但是不能编辑、修改、删除
5、用户使用自己的账号登录后,可以维护自己的进程、端口、docker、日志文件、数据表、服务接口、数通设备、资产管理等信息
管理员可以维护所有用户账号的监控资源信息,但是不会改变监控资源的所属用户
6、统计分析、系统日志、大屏显示没有区分用户账号显示,依然是基于系统所有资源的信息展示和分析
7、邮件告警,添加用户时,如果保存了【用户邮箱】,那么当用户的资源发送告警通知时,系统会同时发送给该用户
8、告警脚本方式,添加用户账号时,如果保存了【用户标识】,一般填写第三方用户ID,脚本中获取第二个参数即是用户标识值,第一个参数即该用户所属资源的告警内容
我们在告警脚本如果想给告警资源的所属账号发送通知,那么获取第二个参数即可,第一个参数是告警内容
如下,我们在原来告警脚本的content=${@:1}下添加两行即可,userId=${@:2},userId即是第三方的用户ID,给这个userId发送信息即可
然后修改下面其他两行如下,标红部分为需要修改和添加的内容(以下以微信告警脚本为例,钉钉其他脚本也和此一样)

#!/bin/sh
content=${@:1}
userId=${@:2}
content=${content//\ $userId/} #把告警内容中的 userId替换为空
......
local UserID=$2           # 部门成员id,微信接收者,多个接收者用竖杠|隔开
UserID=${UserID//\"/}
......
curl --data-ascii "$(body $content $userId)" $PURL