002-CMakeLists.txt说明
CMakeLists.txt说明
CMakeLists.txt
|
|
037-Linux配置环境变量的6种方法
Linux配置环境变量的6种方法
1: Linux 读取环境变量
在自定义安装软件的时候,经常需要配置环境变量,下面列举出各种对环境变量的配置方法。
035-Linux高效运维工具
[toc]
Linux高效运维工具
- 1: 系统性能,资源
- 2: 网络 Network
- 3: 磁盘
- 4: 进程监控
- 5: Container
- 6: 安全扫描
- 7: web
- 7.1 Web 压力测试-Httperf
- 8: 文件监控
- 9: 会话 Session 终端
1: 系统性能,资源
1.1 top
1.2 htop
yum -y install htop
1.3 btop/gotop
1.4 系统资源监控-NMON
NMON 是一种在 AIX 与各种 Linux 操作系统上广泛使用的监控与分析工具.
go zap日志库
go zap日志库笔记
1: 概述
- go zap 高性能日志库;
2: 创建实例
- 通过调用
zap.NewProduction()
/zap.NewDevelopment()
或者zap.Example()
创建一个 Logger。这三个方法的区别在于它将记录的信息不同,参数只能是 string 类型 - 三种创建方式对比:
- Example 和 Production 使用的是 json 格式输出,Development 使用行的形式输出;
- Development:
- 从警告级别向上打印到堆栈中来跟踪
- 始终打印包/文件/行(方法)
- 在行尾添加任何额外字段作为 json 字符串
- 以大写形式打印级别名称
- 以毫秒为单位打印 ISO8601 格式的时间戳
- Development
- 从警告级别向上打印到堆栈中来跟踪
- 始终打印包/文件/行(方法)
- 在行尾添加任何额外字段作为 json 字符串
- 以大写形式打印级别名称
- 以毫秒为单位打印 ISO8601 格式的时间戳
|
|
3: 格式化输出
- zap 有两种类型,分别是zap.Logger和zap.SugaredLogger,它们惟一的区别是,我们通过调用主 logger 的. Sugar()方法来获取一个 SugaredLogger,然后使用 SugaredLogger 以 printf 格式记录语句,例如:
|
|
4: 写入文件
- 默认情况下日志都会打印到应用程序的 console 界面,但是为了方便查询,可以将日志写入文件,但是我们不能再使用前面创建实例的 3 个方法,而是使用
zap.New()
|
|
5: 同时输出控制台和文件
- 如果需要同时输出控制台和文件,只需要改造一下 zapcore.NewCore 即可,示例:
|
|
6: 文件切割
- 日志文件会随时间越来越大,为了避免日志文件把硬盘空间占满,需要按条件对日志文件进行切割,zap 包本身不提供文件切割的功能,但是可以用 zap 官方推荐的
lumberjack
包处理
|
|
7: 按级别写入文件
- 为了管理人员的查询方便,一般我们需要将低于 error 级别的放到 info.log,error 及以上严重级别日志存放到 error.log 文件中,我们只需要改造一下 zapcore.NewCore 方法的第 3 个参数,然后将文件 WriteSyncer 拆成 info 和 error 两个即可,示例:
|
|
- 这样修改之后,info 和 debug 级别的日志就存放到 info.log,error 级别的日志单独放到 error.log 文件中了
8: 控制台按级别显示颜色
- 指定编码器的 EncodeLevel 即可
|
|
9: 显示文件路径和行号
- 前面说到要显示文件路径和行号,只需要 zap.New 方法添加参数 zap.AddCaller()即可,如果要显示完整的路径,需要在编码器配置中指定
|
|
10: 完整代码
|
|
git初始化新仓库
1: 使用 docker 安装配置 gitlab
- 设置默认分支。默认是
main
,更改为master
2: 初始化新仓库
- 在 gitlab 创建新仓库
- 把本地目录上传到这个仓库
|
|
You are not allowed to force push code to a protected branch on this project.
主要原因是因为向一个受保护的分支强制提交了代码,可以在仓库里面进行设置来解决这个问题.
使用 docker 安装配置 gitlab
使用 docker 安装配置 gitlab
1: 下载 gitlab images
Gitlab是一个开源的版本管理系统,实现一个自托管的 Git 项目仓库,可通过 Web 界面进行访问公开的或者私人项目。它拥有与 Github 类似的功能,能够浏览源码,管理缺陷和注释,可以管理团队对仓库的访问,它非常易于浏览提交的版本并提供一个文件历史库。团队成员可以利用内置的简单的聊天程序进行交流。它还提供一个代码片段收集功能可以实现代码复用。
011-基于 Python 的任务调度
Table of Contents
1:快速安装与应用
- crontab 定时任务
2: 快速安装与应用
Python 工具包 schedule 可以轻松地在 Python 中进行任务调度,我们可以通过 PyPI 快速安装它。
005-10分钟搞定pandas+实例
- 1:什么是 pandas
- 2:十分钟搞定 pandas(译文+注释)
- 3:创建对象
- 4:查看数据
- 5:选择数据
- 6:缺失数据处理
- 7:相关操作
- 8:合并
- 9:分组
- 10:重塑
- 11:时间序列
- 12:分类
- 13:绘图
- 14:获取数据写入导出
- 15:小陷阱
- 16:pandas 实战
1:什么是 pandas
先看-> 10 分钟搞定 pandas+实例
转自: https://pyzh.readthedocs.io/en/latest/python-pandas.html 本文是 pandas 官网 10 Minutes to pandas 的翻译 。
go实现并发文件传输,断点续传
go实现并发文件传输,断点续传
1: 概述
很多文件基本都是多协程下载文件要么就只有单协程的断点续传,这里给大家写一个支持有进度条的多协程下载文件,也支持断点续传
2: 使用示例代码
|
|