Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

More mailserver probe fixes #579

Merged
merged 1 commit into from
Mar 10, 2025
Merged

More mailserver probe fixes #579

merged 1 commit into from
Mar 10, 2025

Conversation

jfly
Copy link
Contributor

@jfly jfly commented Mar 10, 2025

A few things here:

  1. Increase the stmp_starttls timeout. We're seeing probes sporadically fail against ImprovMX with "i/o timeout". (see logs below)
  2. Add missing port for probing umbriel (oops).
  3. Also alert on umbriel probe failures.

ImprovMX probe logs:

ts=2025-03-10T16:27:37.785620787Z caller=main.go:190 module=smtp_starttls target=mx2.improvmx.com:25 level=info msg="Beginning probe" probe=tcp timeout_seconds=5
ts=2025-03-10T16:27:37.785744902Z caller=tcp.go:40 module=smtp_starttls target=mx2.improvmx.com:25 level=info msg="Resolving target address" target=mx2.improvmx.com ip_protocol=ip6
ts=2025-03-10T16:27:37.823984377Z caller=tcp.go:40 module=smtp_starttls target=mx2.improvmx.com:25 level=info msg="Resolved target address" target=mx2.improvmx.com ip=2a05:d012:412:e202:e81e:cc44:3b53:8a
3d
ts=2025-03-10T16:27:37.824035793Z caller=tcp.go:112 module=smtp_starttls target=mx2.improvmx.com:25 level=info msg="Dialing TCP without TLS"
ts=2025-03-10T16:27:37.980888559Z caller=handler.go:119 module=smtp_starttls target=mx2.improvmx.com:25 level=info msg="Successfully dialed"
ts=2025-03-10T16:27:37.980965545Z caller=handler.go:119 module=smtp_starttls target=mx2.improvmx.com:25 level=info msg="Processing query response entry" entry_number=0
ts=2025-03-10T16:27:42.293492984Z caller=handler.go:119 module=smtp_starttls target=mx2.improvmx.com:25 level=debug msg="Read line" line="220 mx2.improvmx.com Welcome to ImprovMX mail server v3. - Improv
MX v2024.06.06"
ts=2025-03-10T16:27:42.293596408Z caller=handler.go:119 module=smtp_starttls target=mx2.improvmx.com:25 level=info msg="Regexp matched" regexp=^220 line="220 mx2.improvmx.com Welcome to ImprovMX mail ser
ver v3. - ImprovMX v2024.06.06"
ts=2025-03-10T16:27:42.293617839Z caller=handler.go:119 module=smtp_starttls target=mx2.improvmx.com:25 level=info msg="Processing query response entry" entry_number=1
ts=2025-03-10T16:27:42.293631825Z caller=handler.go:119 module=smtp_starttls target=mx2.improvmx.com:25 level=debug msg="Sending line" line="EHLO prober\r"
ts=2025-03-10T16:27:42.293683932Z caller=handler.go:119 module=smtp_starttls target=mx2.improvmx.com:25 level=info msg="Processing query response entry" entry_number=2
ts=2025-03-10T16:27:42.786519394Z caller=handler.go:119 module=smtp_starttls target=mx2.improvmx.com:25 level=error msg="Error reading from connection" err="read tcp6 [2a01:4ff:1f0:ad06::]:39860->[2a05:d
012:412:e202:e81e:cc44:3b53:8a3d]:25: i/o timeout"
ts=2025-03-10T16:27:42.786645963Z caller=main.go:190 module=smtp_starttls target=mx2.improvmx.com:25 level=error msg="Probe failed" duration_seconds=5.000976894

A few things here:

1. Increase the `stmp_starttls` timeout. We're seeing probes
   sporadically fail against ImprovMX with "i/o timeout". (see logs
   below)
2. Add missing port for probing `umbriel` (oops).
3. Also alert on `umbriel` probe failures.

ImprovMX probe logs:

```
ts=2025-03-10T16:27:37.785620787Z caller=main.go:190 module=smtp_starttls target=mx2.improvmx.com:25 level=info msg="Beginning probe" probe=tcp timeout_seconds=5
ts=2025-03-10T16:27:37.785744902Z caller=tcp.go:40 module=smtp_starttls target=mx2.improvmx.com:25 level=info msg="Resolving target address" target=mx2.improvmx.com ip_protocol=ip6
ts=2025-03-10T16:27:37.823984377Z caller=tcp.go:40 module=smtp_starttls target=mx2.improvmx.com:25 level=info msg="Resolved target address" target=mx2.improvmx.com ip=2a05:d012:412:e202:e81e:cc44:3b53:8a
3d
ts=2025-03-10T16:27:37.824035793Z caller=tcp.go:112 module=smtp_starttls target=mx2.improvmx.com:25 level=info msg="Dialing TCP without TLS"
ts=2025-03-10T16:27:37.980888559Z caller=handler.go:119 module=smtp_starttls target=mx2.improvmx.com:25 level=info msg="Successfully dialed"
ts=2025-03-10T16:27:37.980965545Z caller=handler.go:119 module=smtp_starttls target=mx2.improvmx.com:25 level=info msg="Processing query response entry" entry_number=0
ts=2025-03-10T16:27:42.293492984Z caller=handler.go:119 module=smtp_starttls target=mx2.improvmx.com:25 level=debug msg="Read line" line="220 mx2.improvmx.com Welcome to ImprovMX mail server v3. - Improv
MX v2024.06.06"
ts=2025-03-10T16:27:42.293596408Z caller=handler.go:119 module=smtp_starttls target=mx2.improvmx.com:25 level=info msg="Regexp matched" regexp=^220 line="220 mx2.improvmx.com Welcome to ImprovMX mail ser
ver v3. - ImprovMX v2024.06.06"
ts=2025-03-10T16:27:42.293617839Z caller=handler.go:119 module=smtp_starttls target=mx2.improvmx.com:25 level=info msg="Processing query response entry" entry_number=1
ts=2025-03-10T16:27:42.293631825Z caller=handler.go:119 module=smtp_starttls target=mx2.improvmx.com:25 level=debug msg="Sending line" line="EHLO prober\r"
ts=2025-03-10T16:27:42.293683932Z caller=handler.go:119 module=smtp_starttls target=mx2.improvmx.com:25 level=info msg="Processing query response entry" entry_number=2
ts=2025-03-10T16:27:42.786519394Z caller=handler.go:119 module=smtp_starttls target=mx2.improvmx.com:25 level=error msg="Error reading from connection" err="read tcp6 [2a01:4ff:1f0:ad06::]:39860->[2a05:d
012:412:e202:e81e:cc44:3b53:8a3d]:25: i/o timeout"
ts=2025-03-10T16:27:42.786645963Z caller=main.go:190 module=smtp_starttls target=mx2.improvmx.com:25 level=error msg="Probe failed" duration_seconds=5.000976894
```
@jfly jfly requested a review from a team as a code owner March 10, 2025 17:09
@mweinelt mweinelt merged commit 920bd9b into NixOS:main Mar 10, 2025
13 checks passed
@jfly jfly deleted the more-probe-fixes branch March 10, 2025 17:59
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants