github.com/icyphox/x@v0.0.355-0.20220311094250-029bd783e8b8/tracing/config.schema.json (about) 1 { 2 "$schema": "http://json-schema.org/draft-07/schema#", 3 "$id": "ory://tracing-config", 4 "type": "object", 5 "additionalProperties": false, 6 "description": "Configure distributed tracing.", 7 "properties": { 8 "provider": { 9 "type": "string", 10 "description": "Set this to the tracing backend you wish to use. Supports Jaeger, Zipkin DataDog, Elastic APM and Instana. If omitted or empty, tracing will be disabled. Use environment variables to configure DataDog (see https://docs.datadoghq.com/tracing/setup/go/#configuration).", 11 "enum": [ 12 "jaeger", 13 "zipkin", 14 "datadog", 15 "elastic-apm", 16 "instana" 17 ], 18 "examples": [ 19 "jaeger" 20 ] 21 }, 22 "service_name": { 23 "type": "string", 24 "description": "Specifies the service name to use on the tracer.", 25 "examples": [ 26 "Ory Hydra", 27 "Ory Kratos", 28 "Ory Keto", 29 "Ory Oathkeeper" 30 ] 31 }, 32 "providers": { 33 "type": "object", 34 "additionalProperties": false, 35 "properties": { 36 "jaeger": { 37 "type": "object", 38 "additionalProperties": false, 39 "description": "Configures the jaeger tracing backend.", 40 "properties": { 41 "local_agent_address": { 42 "type": "string", 43 "description": "The address of the jaeger-agent where spans should be sent to.", 44 "oneOf": [ 45 { 46 "pattern": "^\\[(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))]:([0-9]*)$" 47 }, 48 { 49 "pattern": "^([0-9]{1,3}\\.){3}[0-9]{1,3}:([0-9]*)$" 50 }, 51 { 52 "format": "uri" 53 } 54 ], 55 "examples": [ 56 "127.0.0.1:6831" 57 ] 58 }, 59 "propagation": { 60 "type": "string", 61 "description": "The tracing header format", 62 "examples": [ 63 "jaeger" 64 ] 65 }, 66 "max_tag_value_length": { 67 "type": "integer", 68 "description": "The value passed to the max tag value length that has been configured.", 69 "minimum": 0 70 }, 71 "sampling": { 72 "type": "object", 73 "propertyNames": { 74 "enum": [ 75 "type", 76 "value", 77 "server_url" 78 ] 79 }, 80 "allOf": [ 81 { 82 "oneOf": [ 83 { 84 "properties": { 85 "type": { 86 "description": "The type of the sampler you want to use.", 87 "const": "const" 88 }, 89 "value": { 90 "type": "integer", 91 "description": "The value passed to the sampler type that has been configured.", 92 "minimum": 0, 93 "maximum": 1 94 } 95 } 96 }, 97 { 98 "properties": { 99 "type": { 100 "description": "The type of the sampler you want to use.", 101 "const": "rateLimiting" 102 }, 103 "value": { 104 "type": "integer", 105 "description": "The value passed to the sampler type that has been configured.", 106 "minimum": 0 107 } 108 } 109 }, 110 { 111 "properties": { 112 "type": { 113 "description": "The type of the sampler you want to use.", 114 "const": "probabilistic" 115 }, 116 "value": { 117 "type": "number", 118 "description": "The value passed to the sampler type that has been configured.", 119 "minimum": 0, 120 "maximum": 1 121 } 122 } 123 } 124 ] 125 }, 126 { 127 "properties": { 128 "server_url": { 129 "type": "string", 130 "description": "The address of jaeger-agent's HTTP sampling server", 131 "format": "uri" 132 } 133 } 134 } 135 ], 136 "examples": [ 137 { 138 "type": "const", 139 "value": 1, 140 "server_url": "http://localhost:5778/sampling" 141 } 142 ] 143 } 144 } 145 }, 146 "zipkin": { 147 "type": "object", 148 "additionalProperties": false, 149 "description": "Configures the zipkin tracing backend.", 150 "properties": { 151 "server_url": { 152 "type": "string", 153 "description": "The address of Zipkin server where spans should be sent to.", 154 "format": "uri" 155 } 156 }, 157 "examples": [ 158 { 159 "server_url": "http://localhost:9411/api/v2/spans" 160 } 161 ] 162 } 163 } 164 } 165 } 166 }