|
15 | 15 | )
|
16 | 16 | from opentelemetry.sdk.resources import SERVICE_NAME, Resource
|
17 | 17 |
|
18 |
| -from openfga_sdk.telemetry.configuration import ( |
19 |
| - TelemetryConfiguration, |
20 |
| - TelemetryMetricConfiguration, |
21 |
| - TelemetryMetricsConfiguration, |
22 |
| -) |
23 |
| - |
24 | 18 | # For usage convenience of this example, we will import the OpenFGA SDK from the parent directory.
|
25 | 19 | sdk_path = os.path.realpath(os.path.join(os.path.abspath(__file__), "..", "..", ".."))
|
26 | 20 | sys.path.insert(0, sdk_path)
|
|
36 | 30 | Credentials,
|
37 | 31 | )
|
38 | 32 | from openfga_sdk.exceptions import FgaValidationException
|
| 33 | +from openfga_sdk.telemetry.configuration import TelemetryConfiguration |
39 | 34 |
|
40 | 35 |
|
41 | 36 | class app:
|
@@ -88,62 +83,62 @@ async def fga_client(self, env: dict[str, str] = {}) -> OpenFgaClient:
|
88 | 83 |
|
89 | 84 | if not self._telemetry:
|
90 | 85 | # Configure the telemetry metrics to be collected.
|
91 |
| - # Note: the following represents the default configuration values, so unless you want to change them, you can omit this step. |
92 |
| - self._telemetry = TelemetryConfiguration( |
93 |
| - metrics=TelemetryMetricsConfiguration( |
94 |
| - counter_credentials_request=TelemetryMetricConfiguration( |
95 |
| - attr_fga_client_request_client_id=True, |
96 |
| - attr_fga_client_request_method=True, |
97 |
| - attr_fga_client_request_model_id=True, |
98 |
| - attr_fga_client_request_store_id=True, |
99 |
| - attr_fga_client_response_model_id=True, |
100 |
| - attr_fga_client_user=False, |
101 |
| - attr_http_client_request_duration=False, |
102 |
| - attr_http_host=True, |
103 |
| - attr_http_request_method=True, |
104 |
| - attr_http_request_resend_count=True, |
105 |
| - attr_http_response_status_code=True, |
106 |
| - attr_http_server_request_duration=False, |
107 |
| - attr_http_url_scheme=True, |
108 |
| - attr_http_url_full=True, |
109 |
| - attr_user_agent_original=True, |
110 |
| - ), |
111 |
| - histogram_request_duration=TelemetryMetricConfiguration( |
112 |
| - attr_fga_client_request_client_id=True, |
113 |
| - attr_fga_client_request_method=True, |
114 |
| - attr_fga_client_request_model_id=True, |
115 |
| - attr_fga_client_request_store_id=True, |
116 |
| - attr_fga_client_response_model_id=True, |
117 |
| - attr_fga_client_user=False, |
118 |
| - attr_http_client_request_duration=False, |
119 |
| - attr_http_host=True, |
120 |
| - attr_http_request_method=True, |
121 |
| - attr_http_request_resend_count=True, |
122 |
| - attr_http_response_status_code=True, |
123 |
| - attr_http_server_request_duration=False, |
124 |
| - attr_http_url_scheme=True, |
125 |
| - attr_http_url_full=True, |
126 |
| - attr_user_agent_original=True, |
127 |
| - ), |
128 |
| - histogram_query_duration=TelemetryMetricConfiguration( |
129 |
| - attr_fga_client_request_client_id=True, |
130 |
| - attr_fga_client_request_method=True, |
131 |
| - attr_fga_client_request_model_id=True, |
132 |
| - attr_fga_client_request_store_id=True, |
133 |
| - attr_fga_client_response_model_id=True, |
134 |
| - attr_fga_client_user=False, |
135 |
| - attr_http_client_request_duration=False, |
136 |
| - attr_http_host=True, |
137 |
| - attr_http_request_method=True, |
138 |
| - attr_http_request_resend_count=True, |
139 |
| - attr_http_response_status_code=True, |
140 |
| - attr_http_server_request_duration=False, |
141 |
| - attr_http_url_scheme=True, |
142 |
| - attr_http_url_full=True, |
143 |
| - attr_user_agent_original=True, |
144 |
| - ), |
145 |
| - ), |
146 |
| - ) |
| 86 | + # Note: the following represents the default configuration values, so unless you want to customize what's reported, you can omit this. |
| 87 | + self._telemetry = { |
| 88 | + "metrics": { |
| 89 | + "fga-client.credentials.request": { |
| 90 | + "fga-client.request.client_id": True, |
| 91 | + "fga-client.request.method": True, |
| 92 | + "fga-client.request.model_id": True, |
| 93 | + "fga-client.request.store_id": True, |
| 94 | + "fga-client.response.model_id": True, |
| 95 | + "fga-client.user": False, |
| 96 | + "http.client.request.duration": False, |
| 97 | + "http.host": True, |
| 98 | + "http.request.method": True, |
| 99 | + "http.request.resend_count": True, |
| 100 | + "http.response.status_code": True, |
| 101 | + "http.server.request.duration": False, |
| 102 | + "url.scheme": True, |
| 103 | + "url.full": True, |
| 104 | + "user_agent.original": True, |
| 105 | + }, |
| 106 | + "fga-client.request.duration": { |
| 107 | + "fga-client.request.client_id": True, |
| 108 | + "fga-client.request.method": True, |
| 109 | + "fga-client.request.model_id": True, |
| 110 | + "fga-client.request.store_id": True, |
| 111 | + "fga-client.response.model_id": True, |
| 112 | + "fga-client.user": False, |
| 113 | + "http.client.request.duration": False, |
| 114 | + "http.host": True, |
| 115 | + "http.request.method": True, |
| 116 | + "http.request.resend_count": True, |
| 117 | + "http.response.status_code": True, |
| 118 | + "http.server.request.duration": False, |
| 119 | + "url.scheme": True, |
| 120 | + "url.full": True, |
| 121 | + "user_agent.original": True, |
| 122 | + }, |
| 123 | + "fga-client.query.duration": { |
| 124 | + "fga-client.request.client_id": True, |
| 125 | + "fga-client.request.method": True, |
| 126 | + "fga-client.request.model_id": True, |
| 127 | + "fga-client.request.store_id": True, |
| 128 | + "fga-client.response.model_id": True, |
| 129 | + "fga-client.user": False, |
| 130 | + "http.client.request.duration": False, |
| 131 | + "http.host": True, |
| 132 | + "http.request.method": True, |
| 133 | + "http.request.resend_count": True, |
| 134 | + "http.response.status_code": True, |
| 135 | + "http.server.request.duration": False, |
| 136 | + "url.scheme": True, |
| 137 | + "url.full": True, |
| 138 | + "user_agent.original": True, |
| 139 | + }, |
| 140 | + } |
| 141 | + } |
147 | 142 |
|
148 | 143 | self._configuration.telemetry = self._telemetry
|
149 | 144 |
|
|
0 commit comments