---好文章是改出来的
概念理解:
docker 镜像 存储位置 /var/lib/docker
镜像(Image)就是一堆只读层(read-only layer)的统一视角
容器(container)的定义和镜像(image)几乎一模一样,也是一堆层的统一视角,唯一区别在于容器的最上面那一层是可读可写的
安装方式 : 1 docker 2 Python
- 安装docker,使用命令
sudo yum -y install docker-io
- 启动docker 使用命令
systemcrl docker start
- docker换源
sudo curl -sSL https://get.daocloud.io/daotools/set_mirror.sh | sh -s http://6616fe43.m.daocloud.io
- 将docker加入到开机启动中
chkconfig docker on
- docker拉取redis postsql 和sentry
-
docker pull redis docker pull postgres docker pull sentry
- 启动redis和postgres
-
#!/bin/bash docker run -d --name sentry-redis redis; docker run -d --name sentry-postgres -e POSTGRES_PASSWORD=secret -e POSTGRES_USER=sentry postgres; secret=$(docker run --rm sentry config generate-secret-key); # copy key echo "===========,${secret}"; docker run -it --rm -e SENTRY_SECRET_KEY=$secret --link sentry-postgres:postgres --link sentry-redis:redis sentry upgrade; docker run -d -p 9000:9000 --name my-sentry -e SENTRY_SECRET_KEY=$secret --link sentry-redis:redis --link sentry-postgres:postgres sentry; docker run -d --name sentry-cron -e SENTRY_SECRET_KEY=$secret --link sentry-postgres:postgres --link sentry-redis:redis sentry run cron; docker run -d --name sentry-worker-1 -e SENTRY_SECRET_KEY=$secret --link sentry-postgres:postgres --link sentry-redis:redis sentry run worker;
创建用户
docker run -it --rm -e SENTRY_SECRET_KEY='<secret-key>' --link sentry-postgres:postgres --link sentry-redis:redis sentry createuser
docker 启动sentry
#!/bin/bash
echo "start containers====="
docker ps -a #查看服务进程
docker start sentry-redis; #启动Redis
docker start sentry-postgres; #启动postgres
docker start my-sentry; #启动sentry
docker start sentry-cron; # 启动cron
docker start sentry-worker-1; # 启动worker
用 docker-comose 简化安装
#!/bin/bash
#pip install
yum -y install epel-release;
yum -y install python-pip;
pip install docker-compose ; # install docker-compose
# clone onpremise
git clone https://github.com/getsentry/onpremise;
cd onpremise;
docker volume create --name=sentry-data && docker volume create --name=sentry-postgres;
cp -n .env.example .env;
docker-compose build;
echo "SENTRY_SECRET_KEY=$(docker-compose run --rm web config generate-secret-key)"> .env;
docker-compose run --rm web upgrade;
docker-compose up -d;
# access localhost:9000
集成logback.xml:
1 Maven引入
<dependency>
<groupId>io.sentry</groupId>
<artifactId>sentry-logback</artifactId>
<version>1.7.5</version>
</dependency>
2 logback.xml配置:
<configuration>
<!-- Configure the Console appender -->
<appender name="Console" class="ch.qos.logback.core.ConsoleAppender">
<encoder>
<pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n</pattern>
</encoder>
</appender>
<!-- Configure the Sentry appender, overriding the logging threshold to the WARN level -->
<appender name="Sentry" class="io.sentry.logback.SentryAppender">
<filter class="ch.qos.logback.classic.filter.ThresholdFilter">
<level>WARN</level>
</filter>
</appender>
<!-- Enable the Console and Sentry appenders, Console is provided as an example
of a non-Sentry logger that is set to a different logging threshold -->
<root level="INFO">
<appender-ref ref="Console" />
<appender-ref ref="Sentry" />
</root>
</configuration>
3 增加 sentry.properties 在里面configure your DSN:
dsn=http://05ebc48ab7824556bcd81a258a8a17e4@192.168.199.131/6
SpringBoot整合Sentry监控项目日志:
https://www.jianshu.com/p/c7b72f04483c
扩展logback.xml 打印SQL:
<appender name="consoleAppender" class="ch.qos.logback.core.ConsoleAppender">
<encoder>
<charset>UTF-8</charset>
<pattern>
[%d{yyyy-MM-dd HH:mm:ss.SSS}] [%thread] [%level] %logger:%L x:\(%X\) - %msg%n
</pattern>
</encoder>
</appender>
<logger name="com.crosscloud.payment.dao" level="debug"
additivity="false">
<appender-ref ref="consoleAppender" />
</logger>