草庐IT

安全日志

全部标签

regex - 使用正则表达式解析 Apache 日志文件

这个问题在这里已经有了答案:SplitastringonwhitespaceinGo?(4个答案)关闭3年前。我正在解析一个我自定义的Apache日志,它只给我两个值:“time”和“memory”(值是毫秒数和字节数),它们都是int64或float64,但我是使用正则表达式和Go来解析文件,所以当我匹配文件的内容时,它返回“[]”(空括号)并且不填充slice,我的代码是:for_,line:=rangelines{varbufferbytes.Bufferbuffer.WriteString(`\[0-9]+\s`)buffer.WriteString(`[0-9]+\s`)re

go - 我应该重用日历 API 服务,还是按需创建新服务是否安全?

我制作了一个小型网络服务器来创建和更新日历事件。但是,我有点不确定我应该如何使用日历api库服务。目前,每次网络服务器接受请求时,我都会创建一个新请求,如下所示:ctx:=context.Background()srv,err:=calendar.NewService(ctx,option.WithTokenSource(config.TokenSource(ctx)))我怀疑我可能应该重用此服务,但我找不到任何关于此的文档。重复使用安全吗?不再使用时会自动丢弃(即垃圾回收)吗? 最佳答案 您可能想使用req.Context()(其

Azure Monitor 事件日志未到达事件中心

我已经创建了一个免费套餐Azure帐户。我的AzureMonitor事件日志中有事件(获取命名空间列表键等),单击这些事件可以查看它们的JSON。我选择了“导出到事件中心”,选择了“所有区域”,选中了“导出到事件中心”并设置了命名空间和策略名称。该策略是根共享策略,已选中管理、发送、监听。这会自动创建“insights-operational-logs”事件中心。我正在使用azuregolang客户端(https://github.com/Azure/azure-event-hubs-go)查询此事件中心,但我没有在客户端中看到ActivityLog事件。我确实收到了类别为“操作”和“

go - golang中高效的日志解析

解析日志文件中的行并提取兴趣点的效率(性能和可读性)如何?例如:***Time:2/1/201913:51:0017.965Pump10hoseFFpricelevel1limit0.0000authorisepending(Type00)17.965Pump10StatechangeLOCKED_PSTATEtoCALLING_PSTATE[31]38.791Pump10deliverycomplete,Hose1,price72.9500,level1,value100.0000,volume1.3700,v-total8650924.3700,m-total21885705.88

go - Go 中来自 GCF 的日志不包含日志级别

我正在尝试从用Go编写的CloudFunction将信息/错误日志发送到GCP上的StackDriverLogging,但是所有日志都没有日志级别分配。我已经从https://github.com/GoogleCloudPlatform/golang-samples/blob/master/functions/helloworld/hello_logging.go创建了函数演示问题。 最佳答案 云支持在这里!正如documentation中所指定,您尝试执行的操作是不可能的:Logstostdoutorstderrdonothave

linux - 自定义日志处理/解析

我有这样的日志格式:[26830431.7966868][4][0.013590574264526367][30398][api][1374829886.320353][init]GET/foo{"controller"=>"foo","action"=>"index"}[26830431.7966868][666][2.1876697540283203][30398][api][1374829888.4944339][request_end]200OK条目是使用这样的模式构造的:[request_id][user_id][time_from_request_started][proc

google-app-engine - Golang、App Engine、 channel 和线程安全

http://blog.golang.org/go-and-google-app-engine“此外,尽管存在goroutine和channel,但当Go应用程序在AppEngine上运行时,在给定实例中仅运行一个线程。也就是说,所有goroutine都在单个操作系统线程中运行,因此没有CPU并行性可用于给定的客户请求。我们希望在某个时候可以取消此限制”那是在2011年5月。现在仍然如此吗?我有一个应用程序,它除了利用Golang的速度之外什么都不做;获取一些输入数据,对其执行内存计算,返回结果。切勿接触数据存储区或任何其他AppEngineAPI。我需要应用程序执行许多计算,最好是具

google-app-engine - 是否可以获取GAE 上的日志点?

我想知道是否可以在记录错误时记录行号/列号。GAE日志库似乎只存储错误消息,但我认为像大多数日志库一样获取错误/日志点的确切位置非常有值(value)。 最佳答案 你的要求肯定是可以的,你只需要非常明确地表达出来就可以了!我在http://blog.golang.org/error-handling-and-go推荐AndrewGerrand的优秀文章有关此问题的一般信息,包括特定于AppEngine的注释。那篇文章并没有专门针对堆栈跟踪,但是您当然可以通过http://golang.org/pkg/runtime/#Stack自己

winapi - 从 unsafe.Pointer 获取特定 byte slice 的最佳(最安全 + 最高性能)方法是什么

我正在尝试转换thisc++去。简而言之,这就是C代码正在做的事情:staticconstchar*pSharedMem=NULL;intsessionInfoOffset;returnpSharedMem+pHeader->sessionInfoOffset;这是我的(伪)go代码:varpSharedMemunsafe.PointersessionInfoLenC.intbyteSlice:=C.GoBytes(pSharedMem,pHeader.sessionInfoLen)returnbyteSlice[pHeader.sessionInfoOffset:]我从来没有真正编写

logging - Golang go-workers自定义日志记录中间件?

我正在构建一个Golang实现Sidekiq的应用程序-兼容jrallison/go-workers工作队列和围绕Sirupsen/logrus的自定义日志记录包装器用于编码的JSON日志。现在,我的所有应用程序(除了go-workers到目前为止)都在中心位置使用我的记录器包装器,以确保其输出的100%与JSON兼容。请注意,第1行和第2行是来自中央记录器的正确JSON,但是当go-workers初始化时,我们看到第3行来自错误的纯文本记录器。{"db":{"Mapper":{}},"instance_id":"1","level":"info","msg":"Db:Connecte