Jacob Hoffman-Andrews

Results 271 issues of Jacob Hoffman-Andrews

During times of high load, we log a large number of error log lines like these: `[mysql] read ... i/o timeout` `[mysql] unexpected EOF` These go through the mysql log...

Using the query from https://www.robustperception.io/dropping-metrics-at-scrape-time-with-prometheus: `topk(20, count by (__name__, job)({__name__=~".+"}))`, I found that the histograms in `bdns` are far and away our highest cardinality metrics. ![image](https://user-images.githubusercontent.com/220205/170381511-03692522-806b-4b4a-b90e-c9fc770aadb3.png) That's because they are...

Right now the va rejects too-long redirect targets, but will log the whole thing. We should truncate the logged URL to our max size, so we don't make our logs...

We could save some computation, particularly for Debugf, if we check the log level before doing the string formatting. If we're not emitting DEBUG logs, no reason to generate strings...

Right now, if rocsp-tool gets a timeout or other error from GenerateOCSP, or from writing to Redis, it will error and move on to the next certificate. Instead, it should...

We export some useful pprof endpoints, including /debug/mutex and /debug/block, to profile mutexes and blocking respectively: https://pkg.go.dev/net/http/pprof However, to actually get data out of these we need to call runtime.SetMutexProfileFraction...

Follow up to #6050. Any plain `error` returned via gRPC will get translated by WFE into a JSON Problem Document with `"type": "ietf...serverInternal"`), regardless of whether we wrap it in...

Currently we build and release boulder-tools manually using test/boulder-tools/tag_and_upload.sh. But we should automate that process to ensure builds are always made reproducibly and from a clean state. That would also...

Our Boulder configs have some fields that are required, and some that have defaults. We should encode these things in our config structs in a systematic way, using [struct tags](https://go.dev/ref/spec#Struct_types)....