wireshark抓包之如何抓包
Linux环境配置(需要进行https解析时)
- 添加sslkeylogfile(必须)
touch /data/sslkeylogfile
- 设置SSLKEYLOGFILE:修改系统环境变量
export SSLKEYLOGFILE="/data/sslkeylogfile"
touch /data/sslkeylogfile
export SSLKEYLOGFILE="/data/sslkeylogfile"
在一次业务开发中,业务中需要请求k8s服务地址。但是业务逻辑中的请求总是提示HTTP 404错误,使用curl 命令又是正确的。
在golang项目中,使用Sling库作为clinet,进行网络请求以获取服务响应结果
GDB是UNIX/LINUX操作系统下的、基于命令行的、功能强大的程序调试工具。 可以查看程序在执行过程中的内部
通过python来运行gdb命令,其本质是利用python语言的灵活性和便利。GDB提供了一套python API,方便用户使用python脚本编写更复杂的GDB脚本 gdb python api 官方文档
业务需要通过脚本跑一批数据,数据有很多条,每条数据需要进行一次数据库查询、一次OSS下载,最终才能确定该记录的输出
输出举例:
记录A: DB记录1 + OSS记录1
记录B: DB记录2 + OSS记录2
...
记录N: DB记录N + OSS记录N
最近攻防等原因,运维将测试环境部分域名上了cloudflare(主要是海外)
在nginx中,这些域名被用做反向代理的upstream,在添加cloudflare之后,访问出现 http 502,具体配置如下
location /proxy/cn/
{
proxy_pass https://user_cs_cn_backend/;
proxy_http_version 1.1;
proxy_set_header Host "api-cs-cn-sandbox.intsig.net";
proxy_set_header Connection "keep-alive";
proxy_connect_timeout 5;
proxy_send_timeout 10;
proxy_read_timeout 10;
}
新对接的新服务,在nginx上配置为反向代理upstream进行访问
访问时稳定复现502错误,但是使用curl则正常。nginx配置如下:
location /test
{
proxy_pass https://middleground_workonly_backend/xxx/xxx;
proxy_http_version 1.1;
proxy_set_header Host "xxx-sandbox-workonly.xxx.xxx";
proxy_set_header Connection "keep-alive";
proxy_connect_timeout 5;
proxy_send_timeout 10;
proxy_read_timeout 10;
}
因为转换服务比较耗CPU等资源,业务层针对pdf转offcie服务做负载均衡
未做负载均衡前,一切正常;添加负载均衡之后反而失败了
location /aspose_sdk/
{
client_body_buffer_size 30M;
client_max_body_size 30M;
proxy_pass http://aspose_sdk/;
proxy_set_header Connection "";
proxy_http_version 1.0;
proxy_connect_timeout 10;
proxy_send_timeout 30;
proxy_read_timeout 300;
}
使用验证器保证安全性,通过BPF映射实现内核-用户空间通信 所有与用户空间的交互都是通过 eBPF“映射”进行的,这些映射是键值存储。 每个 eBPF 程序都将在一定的有限执行时间内完成,即非图灵完备
BCC适合使用了其他库的复杂脚本、守护进程
优点: bpftrace基于内置Linux技术,不用追赶内核版本改动,稳定性更高 脚本执行速度比systemtap快(使用llvm编译成BPF)
缺点: bpftrace语言特性上没有systemtap丰富,不太能进行复杂的探测操作 探针附到函数一定偏移处不方便 无法直接获取函数的局部变量 无法直接获取结构体信息 内核版本要求较高,在较旧的发行版上难以安装
by SystemTap
Copyright © 2008-2015 Red Hat, Inc. and others
This documentation is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License version 2 aspublished by the Free Software Foundation.