{
    "$schema": "http://json-schema.org/draft-04/schema#",
    "additionalProperties": false,
    "description": "generic log container format",
    "properties": {
        "context": {
            "additionalProperties": false,
            "properties": {
                "class": {
                    "type": "string"
                },
                "file": {
                    "type": "string"
                },
                "host": {
                    "type": "string"
                },
                "line": {
                    "type": "string"
                },
                "method": {
                    "type": "string"
                },
                "namespace": {
                    "type": "string"
                },
                "processId": {
                    "type": "string"
                },
                "threadId": {
                    "type": "string"
                }
            },
            "type": "object"
        },
        "data": {
            "additionalProperties": true,
            "properties": {},
            "type": "object"
        },
        "exception": {
            "additionalProperties": false,
            "properties": {
                "backtrace": {
                    "items": {
                        "type": "string"
                    },
                    "type": "array"
                },
                "data": {
                    "additionalProperties": true,
                    "properties": {},
                    "type": "object"
                },
                "message": {
                    "type": "string"
                },
                "type": {
                    "type": "string"
                }
            },
            "required": [
                "type",
                "message",
                "backtrace"
            ],
            "type": "object"
        },
        "id": {
            "type": "string"
        },
        "level": {
            "pattern": "^(debug|info|warn|crit|fatal|unknown)$",
            "type": "string"
        },
        "name": {
            "type": "string"
        },
        "time": {
            "_format": "date-time",
            "type": "string"
        },
        "version": {
            "pattern": "^0$",
            "type": "string"
        }
    },
    "required": [
        "time",
        "name",
        "level"
    ],
    "title": "Steno Log Container",
    "type": "object"
}