spatie/ping
Run ICMP ping from PHP and get structured results. Spatie Ping wraps the system ping command, parsing packet loss, transmit/receive counts, min/max/avg times, standard deviation, per-line responses, and error status for quick connectivity checks.
iputils error string recognition (PR #23) improves robustness in environments with non-standard ping outputs (e.g., custom builds or embedded systems).iputils (common across Linux/macOS) may reduce Windows-specific quirks, but Windows admin privileges and Docker containerization remain prerequisites.dependabot/fetch-metadata). No runtime impact.iputils error strings (e.g., custom ping binaries), reducing misclassified failures.iputils-ping) to validate error parsing.iputils setups.iputils-specific messages) to tailor alerts via spatie/laravel-monitor.spatie/ping for iputils-compatible hosts, fall back to HTTP for others.iputils (default on most distros).iputils-ping if using custom binaries.spatie/ping:^1.2.2; configure allowed hosts.$ping = Ping::create()
->host('example.com')
->timeout(2)
->ping();
if ($ping->failed()) {
// New: Check $ping->error() for iputils-specific messages
if (str_contains($ping->error(), 'Network is unreachable')) {
// Handle custom error case
}
}
spatie/laravel-logging for debugging.spatie/ping for future iputils parsing improvements.iputils error strings (e.g., ping: sendmsg: Network is down).iputils environments.ping -V to identify custom iputils versions.$ping->error() with raw ping output for debugging.iputils ping binary; document workarounds.| Failure Scenario | Impact | Mitigation |
|---|---|---|
| ICMP blocked by firewall | False negatives | Fallback to HTTP/TCP checks |
| Custom iputils errors | Misclassified failures | Update alerting rules for new error strings |
| High packet loss (>50%) | Alert fatigue | Adjust thresholds or suppress known hosts |
| PHP process crashes | Lost ping data | Use Laravel Queues with dead-letter queue |
| Network congestion | Slow responses | Exponential backoff |
iputils quirks).iputils version compatibility (e.g., "Tested with Alpine 3.18+").How can I help you explore Laravel packages today?