{"record":{"id":"882a0c4e610c2a3d","repo":"Seldaek/monolog","slug":"timeout-must-be-0-or-a-positive-float-got-value","errorCode":null,"errorMessage":"Timeout must be 0 or a positive float (got $value)","messagePattern":"Timeout must be 0 or a positive float \\(got \\$value\\)","errorType":"exception","errorClass":"InvalidArgumentException","httpStatus":null,"severity":"error","filePath":"src/Monolog/Handler/SocketHandler.php","lineNumber":324,"sourceCode":"\n    /**\n     * Wrapper to allow mocking\n     *\n     * @return mixed[]|bool\n     */\n    protected function streamGetMetadata(): array|bool\n    {\n        if (!\\is_resource($this->resource)) {\n            throw new \\LogicException('streamGetMetadata called but $this->resource is not a resource');\n        }\n\n        return stream_get_meta_data($this->resource);\n    }\n\n    private function validateTimeout(float $value): void\n    {\n        if ($value < 0) {\n            throw new \\InvalidArgumentException(\"Timeout must be 0 or a positive float (got $value)\");\n        }\n    }\n\n    private function connectIfNotConnected(): void\n    {\n        if ($this->isConnected()) {\n            return;\n        }\n        $this->connect();\n    }\n\n    protected function generateDataStream(LogRecord $record): string\n    {\n        return (string) $record->formatted;\n    }\n\n    /**\n     * @return resource|null","sourceCodeStart":306,"sourceCodeEnd":342,"githubUrl":"https://github.com/Seldaek/monolog/blob/57eb1028342134e701e77c617565d51b6e5a2a53/src/Monolog/Handler/SocketHandler.php#L306-L342","documentation":"Error \"Timeout must be 0 or a positive float (got $value)\" thrown in Seldaek/monolog.","triggerScenarios":"Thrown at src/Monolog/Handler/SocketHandler.php:324 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":[],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"57eb1028342134e701e77c617565d51b6e5a2a53","analyzedAt":"2026-08-17T02:36:30.259Z","schemaVersion":2},"datasetVersion":"2026-08-17T04:17:16.089Z"}