目录
1.基本操作
春松客服项目中的容器包括:nginx、contact-center、activemq、mysql、redis、elasticsearch。
查看日志
- 调整日志级别
需要在 .env文件中修改 LOG_LEVEL 这个变量的值为需要的级别,例如:INFO、WARN、ERROR。
更改了日志级别后需要重新启动服务。
打印日志
如果需要查看某一个容器的日志,通过以下命令
docker-compose logs -f 容器名称
删除日志
执行以下命令
sudo ./scripts/cleanlog.sh 容器名称
删除日志脚本
#!/bin/bash -e *规定下面文件所运行的环境
baseDir=$(cd `dirname "$0"`;pwd) *输出文件路径
cd $baseDir/..
CONTAINER=$1
if [[ -z $CONTAINER ]]; then
echo "No container specified"
exit 1
fi
set -x *打印脚本
if [[ "$(docker ps -aq -f name=^/${CONTAINER}$ 2> /dev/null)" == "" ]]; then
CONTAINER="$(docker-compose ps $CONTAINER 2> /dev/null | awk '{if (NR==3) print $1 fi}')"
if [[ -z $CONTAINER ]]; then
echo "Container \"$1\" does not exist, exiting."
exit 1
fi
fi
log=$(docker inspect -f '{{.LogPath}}' $CONTAINER 2> /dev/null)
truncate -s 0 $log
2.备份和恢复
备份需要停止服务(建议在业务低峰时执行)
备份
docker-compose down
cp -f ~/git/chatopera.cc ~/git/chatopera.cc.时间戳
docker save chatopera/contact-center:develop > chatopera/contact-center.时间戳.tgz
恢复
docker load < chatopera/contact-center.时间戳.tgz
3.春松客服升级
升级注意事项
- 升级前执行备份操作
- 升级后进行验证
登入容器
登入春松客服
docker-compose exec contact-center bash
数据库自动升级机制
更新为新的容器后,数据库变更的运行
手动执行需要运行以下的脚本。执行完成之后会生成upgrade.his文件
./mysql.upgrade.db.sh
4.数据库管理
MySQL 数据库
MySQL 是一种开放源代码的关系型数据库管理系统,关联数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内。
- 推荐使用的管理工具:
MySQL Workbench | Navicat for MySQL | MySQL Client cli |
---|---|---|
命令行工具 | ||
MySQL Workbench为数据库管理员、程序开发者和系统规划师提供可视化的Sql开发、数据库建模、以及数据库管理功能。 | Navicat for MySQL是一套管理和开发MySQL或MariaDB的理想解决方案,支持单一程序,可同时连接到MySQL和MariaDB | MySQL Client cli是官方提供的MySQL的客户端的一种,以命令行的方式执行。 |
- 连接数据库
使用Navicat工具连接数据库。
首先从描述文件中查看MySQL 数据库的用户名密码和端口。用户名和密码可通过 .env文件进行修改。
知道了用户名和密码之后我们可以在Navicat工具中进行连接。
在弹出的对话框中填入相应的信息。
连接成功后可以看到数据库表,可以根据需要对数据库表进行查看数据和操作。
也可以在工具中中执行SQL语句。
- 数据字典
在线浏览:数据字典
Redis
Redis(Remote Dictionary Server ),即远程字典服务,是一个开源的使用ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。
- 推荐使用工具
Medis | 工具相关连接 | 简介 |
---|---|---|
https://github.com/luin/medis | Medis 是一款界面漂亮、易于使用、免费开源的 Redis 数据库管理工具。提供了大部分常用的功能,包括键空间的浏览、键和键值的增删改查、重命名修改 TTL 等。 |
同样,从描述文件中查看用户名密码之后连接Redis数据库。连接成功之后页面空白,需要选择有数据的数据库。春松客服中使用对是Redis中的1、2、3。
选择之后就可以看到对应的数据。
数据库 | 数据 |
---|---|
1 | Spring Session数据 |
2 | 业务相关数据 |
3 | 认证和授权相关数据 |
Elasticsearch
Elasticsearch 是一个分布式、高扩展、高实时的搜索与数据分析引擎。它能很方便的使大量数据具有搜索、分析和探索的能力。充分利用Elasticsearch的水平伸缩性,能使数据在生产环境变得更有价值。
- 推荐使用工具
ElasticSearch Head | 工具相关连接 | 简介 |
---|---|---|
https://github.com/mobz/elasticsearch-head | elasticsearch-head是一个界面化的集群操作和管理工具,可以对集群进行傻瓜式操作。你可以通过插件把它集成到elasticsearch(5.0版本后不支持此方式),也可以安装成一个独立webapp。 |
- 执行地址:http://宿主机器IP:端口号/_plugin/head/。 端口号默认8039。
端口号可以在描述文件中进行查看。
在Elasticsearch中存储了例如:聊天数据、收藏的消息、联系人的信息等数据。用来做全文检索。
- Elasticsearch备份和恢复的推荐工具
如果只想将Elasticsearch进行导出或者复制,可以使用Elasticsearch-Dump工具。
Elasticsearch-Dump | 工具相关连接 | 简介 |
---|---|---|
https://github.com/taskrabbit/elasticsearch-dump | elasticdump提供了多种导入导出数据的方式,可以 index <-> index 、 index <-> .json 文件,还支持将 index 查询结果导出到 .json 文件。执行的命令也很简单,只需指定数据来源 input 、数据输出 output 、数据类型 type 即可。 |
ActiveMQ
Apache ActiveMQ是Apache软件基金会所研发的开放源代码消息中间件,由于ActiveMQ是一个纯Java程序,因此只需要操作系统支持Java虚拟机,ActiveMQ便可执行。
- 推荐使用工具
ActiveMQ - Apache Software | 工具相关连接 | 简介 |
---|---|---|
https://activemq.apache.org/ | Apache ActiveMQ™是最流行的开源,多协议,基于Java的消息传递服务器。它支持行业标准协议,因此用户可以通过广泛的语言和平台从客户选择中受益。可以使用C,C ++,Python,.Net等进行连接 |
- 执行地址:http://宿主机器IP:端口号/admin。 端口号默认8051。
账号和密码还有端口号可以在描述文件中进行查看。
可以查看当前系统的运行情况,例如:上线多长时间、上线等版本等信息。
还可以查看,操作Queues等信息。
5.延伸阅读
开源智能客服系统
春松客服是 Chatopera 自主研发的,Apache2.0开源协议授权的智能客服系统,春松客服会不断增强客服系统的智能化,这包括利用自然语言处理、机器学习和语音识别等技术让客服工作更有效率、客服满意度更高、成本更低。