RSyslog Documentation – rsyslog 属性
RSyslog Documentation – rsyslog 属性replacer
DevOps
示例:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 |
package main import ( "fmt" "unsafe" ) func main() { substr() } type String struct { str *byte length int } func (s *String) String() string { return fmt.Sprintf("str: %p\nlen: %d", s.str, s.length) } func inspectString(s *string) { a := (*String)(unsafe.Pointer(s)) fmt.Printf("%s\n", a.String()) } // 变量a的地址比变量b的地址大16字节,一方面体现了栈是向下走的,先分配a,在分配b // 另一方面,也体现了字符串变量占用的内存大小是16字节,一个指针和一个int // 变量b的str指针比变量a的str指针大2,说明b没有产生新的字符串内容 func substr() { a := "12345" b := a[2:4] println("a:", &a) inspectString(&a) println("b:", &b) inspectString(&b) } |
相关代码: src/net/http/server.go
状态说明:
New: 从Accept拿到一个新连接后,连接被标记为New,并触发hook
Active: 对于http2,只要连接上有请求存在,就算是Active的
Idle: 请求处理完毕,处于keep-alive状态
Hijack: 连接被偷走了,自己不需要继续处理了,这种连接不会进入Close状态的,Hijack 是个终态
Close:连接已关闭
参考:
go语言开创性的让对测试的支持成为了语言本身的重要组成部分,足以说明go语言对测试的重视以及测试本身的重要性
https://github.com/dolthub/dolt
让MySQL表也能版本管理,这个对于存储配置的数据库非常不错。
通常使用git存储配置的好处是方便查看变更历史。然而,如何让生产服务器访问却不太方便。
所以,很多时候使用MySQL存储配置,但是,查看变更历史就不那么方便了。
现在,有了dolt,简直太棒了!
1 |
setcap cap_net_raw,cap_net_admin=eip /usr/sbin/tcpdump |