{"id":1143,"date":"2024-12-22T22:38:20","date_gmt":"2024-12-22T22:38:20","guid":{"rendered":"https:\/\/mesbahi.net\/fa\/?p=1143"},"modified":"2024-12-23T08:33:14","modified_gmt":"2024-12-23T08:33:14","slug":"intro-opentelemetry","status":"publish","type":"post","link":"https:\/\/mesbahi.net\/fa\/blog\/1403\/10\/02\/intro-opentelemetry\/","title":{"rendered":"\u062f\u0631 \u0628\u0627\u0628 OpenTelemetry"},"content":{"rendered":"\n<p><strong>\u0645\u0642\u062f\u0645\u0647<\/strong><br>\u062d\u062a\u0645\u0627\u064b \u0627\u0633\u0645 <strong>OpenTelemetry<\/strong> (\u06cc\u0627 \u0647\u0645\u0648\u0646 <strong>OTel<\/strong>) \u0631\u0648 \u062d\u0648\u0644 \u0648 \u062d\u0648\u0634 \u0645\u0648\u0636\u0648\u0639\u0627\u062a \u0645\u0627\u0646\u06cc\u062a\u0648\u0631\u06cc\u0646\u06af \u0648 \u0644\u0627\u06af\u06cc\u0646\u06af\u060c \u0634\u0646\u06cc\u062f\u06cc\u0646. \u0647\u0631\u0686\u0642\u062f\u0631 \u062a\u0646\u0648\u0639 \u06a9\u0627\u0645\u067e\u0648\u0646\u0646\u062a\u200c\u0647\u0627\u060c \u0633\u0631\u0648\u06cc\u0633\u200c\u0647\u0627\u060c \u0627\u067e\u0644\u06cc\u06a9\u06cc\u0634\u0646\u200c\u0647\u0627 \u0628\u06cc\u0634\u062a\u0631 \u0628\u06cc\u0634\u062a\u0631 \u0628\u0634\u0647\u061b \u06cc\u0627 \u0628\u0647 \u0632\u0628\u0648\u0646 \u0633\u0627\u062f\u0647 \u0633\u06cc\u0633\u062a\u0645 \u062a\u0648\u0632\u06cc\u0639 \u0628\u0634\u0647\u060c \u0644\u0632\u0648\u0645 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 \u06cc\u06a9 \u0627\u0633\u062a\u0627\u0646\u062f\u0627\u0631\u062f \u06cc\u0627 \u0645\u06a9\u0627\u0646\u06cc\u0632\u0645 \u0641\u0631\u0627\u06af\u06cc\u0631\u060c \u0627\u0647\u0645\u06cc\u062a\u0634 \u0628\u06cc\u0634\u062a\u0631 \u0645\u06cc\u200c\u0634\u0647. \u0641\u06a9\u0631 \u06a9\u0646\u06cc\u062f \u0644\u0627\u06af \u0631\u0648 \u0628\u0627 \u06cc\u0647 \u0641\u0631\u0645\u062a\u06cc \u06a9\u0647 \u0645\u062e\u062a\u0635 \u062f\u0627\u062a\u200c\u0646\u062a \u0628\u0627\u0634\u0647 \u0628\u0646\u0648\u06cc\u0633\u06cc\u0645\u060c \u06cc\u0627 \u0627\u0646\u062f\u0627\u0632\u0647\u200c\u06af\u06cc\u0631\u06cc \u067e\u0631\u0641\u0631\u0645\u0646\u0633 \u0633\u0631\u0648\u06cc\u0633 \u062f\u0627\u062a\u200c\u0646\u062a\u06cc\u200c\u0645\u0648\u0646\u060c \u0645\u0633\u062a\u0642\u0644 \u0627\u0632 \u0628\u062e\u0634 \u0641\u0631\u0627\u0646\u062a \u06a9\u0647 \u0628\u0627 \u0631\u06cc\u200c\u0627\u06a9\u062a \u06cc\u0627&#8230; \u0646\u0648\u0634\u062a\u06cc\u0645 \u0628\u0627\u0634\u0647\u060c \u0631\u0628\u0637 \u062f\u0627\u062f\u0646 \u0648 \u062a\u062d\u0644\u06cc\u0644 \u062f\u0627\u062f\u0647\u200c\u0647\u0627\u06cc \u062c\u0645\u0639 \u0634\u062f\u0647 \u0686\u0642\u062f\u0631 \u062f\u0634\u0648\u0627\u0631 \u0645\u06cc\u200c\u0634\u0647\u061f\u061f \u0648\u0644\u06cc \u0648\u0642\u062a\u06cc \u0627\u0633\u062a\u0627\u0646\u062f\u0627\u0631\u062f\u06cc \u062f\u0627\u0634\u062a\u0647 \u0628\u0627\u0634\u06cc\u0645 \u06a9\u0647 \u0647\u0631 \u0628\u062e\u0634 \u0627\u0632 \u0646\u0631\u0645\u200c\u0627\u0641\u0632\u0627\u0631 \u0628\u0627 \u0627\u0648\u0646 \u0641\u0631\u0645\u062a \u062f\u0627\u062f\u0647\u200c\u0647\u0627\u0634 \u0631\u0648 \u0628\u0647 \u062c\u0627\u06cc\u06cc \u0627\u0631\u0633\u0627\u0644 \u06a9\u0646\u0647. \u0648 \u062f\u0631 \u0646\u0642\u0637\u0647\u200c\u06cc \u062a\u062c\u0645\u06cc\u0639 \u062f\u0627\u062f\u0647\u200c\u0647\u0627 \u0647\u0645 \u062f\u0633\u062a\u0645\u0648\u0646 \u0628\u0627\u0632 \u0628\u0627\u0634\u0647 \u062a\u0627 \u0628\u0627 \u0647\u0631 \u0627\u0628\u0632\u0627\u0631\u06cc \u06a9\u0647 \u0627\u0648\u0646 \u0641\u0631\u0645\u062a \u0627\u0633\u062a\u0627\u0646\u062f\u0627\u0631\u062f \u0631\u0648 \u0645\u06cc\u200c\u062a\u0648\u0646\u0633\u062a \u0628\u0641\u0647\u0645\u0647\u061b \u062f\u0627\u062f\u0647\u200c\u0647\u0627 \u0631\u0648 \u062c\u0645\u0639\u200c\u0622\u0648\u0631\u06cc\u060c \u067e\u0631\u062f\u0627\u0632\u0634\u060c \u0646\u0645\u0627\u06cc\u0634 \u0648 \u06af\u0632\u0627\u0631\u0634\u200c\u06af\u06cc\u0631\u06cc \u06a9\u0646\u06cc\u0645\u061b \u0686\u0642\u062f\u0631 \u0627\u06cc\u0631\u0627\u062f\u06cc\u0627\u0628\u06cc \u0648 \u0627\u0634\u0631\u0627\u0641 \u0628\u0647 \u0634\u0631\u0627\u06cc\u0637 \u0628\u0631\u0627\u0645\u0648\u0646 \u0631\u0627\u062d\u062a\u200c\u062a\u0631 \u0645\u06cc\u200c\u0634\u0647!<br>\u0647\u062f\u0641\u0645 \u0627\u0632 \u0627\u06cc\u0646 \u0645\u0637\u0644\u0628 \u0627\u06cc\u0646\u0647 \u06a9\u0647 \u062f\u0631\u06a9 \u06a9\u0646\u06cc\u0645 \u0686\u0631\u0627 OTel \u06cc\u0647 \u0627\u0633\u062a\u0627\u0646\u062f\u0627\u0631\u062f \u0645\u0647\u0645 \u0634\u062f\u0647 \u0648 \u0686\u0637\u0648\u0631\u06cc \u0627\u0632 \u0648\u0627\u0628\u0633\u062a\u06af\u06cc \u0628\u0647 \u06cc\u0647 \u0627\u0628\u0632\u0627\u0631 \u06cc\u0627 \u0633\u0631\u0648\u06cc\u0633 \u062e\u0627\u0635 \u0628\u0631\u0627\u06cc \u062c\u0645\u0639\u200c\u0622\u0648\u0631\u06cc \u062f\u0627\u062f\u0647\u200c\u0647\u0627\u06cc \u062a\u0644\u200c\u0645\u062a\u0631\u06cc (Telemetry) \u0646\u062c\u0627\u062a\u0645\u0648\u0646 \u0645\u06cc\u200c\u062f\u0647.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">\u0686\u0631\u0627 OpenTelemetry \u0628\u0647\u200c\u0648\u062c\u0648\u062f \u0627\u0648\u0645\u062f\u061f<\/h3>\n\n\n\n<p>\u062a\u0648 \u0633\u06cc\u0633\u062a\u0645\u200c\u0647\u0627\u06cc \u0628\u0632\u0631\u06af\u060c \u0645\u062e\u0635\u0648\u0635\u0627\u064b \u0648\u0642\u062a\u06cc \u0633\u0631\u0648\u06cc\u0633\u200c\u0647\u0627\u06cc \u0645\u062a\u0639\u062f\u062f\u06cc(.Distributed System, SOA, Microservices, etc) \u062f\u0627\u0631\u06cc\u0645\u060c \u0645\u0627\u0646\u06cc\u062a\u0648\u0631 \u06a9\u0631\u062f\u0646 \u062c\u0627\u0645\u0639 \u0648 \u0641\u0631\u0627\u06af\u06cc\u0631 \u062e\u06cc\u0644\u06cc \u0645\u0647\u0645\u0647. \u06cc\u0647 \u0632\u0645\u0627\u0646\u06cc \u0627\u06af\u0647 \u06a9\u0633\u06cc \u0645\u06cc\u200c\u062e\u0648\u0627\u0633\u062a \u0644\u0627\u06af\u200c\u0647\u0627\u060c \u0645\u062a\u0631\u06cc\u06a9\u200c\u0647\u0627 \u0648 \u062a\u0631\u06cc\u0633\u200c\u0647\u0627\u0634 (\u06a9\u0647 \u0628\u0639\u062f\u062a\u0631 \u0647\u0631 \u0633\u0647 \u0631\u0648 \u062a\u0648\u0636\u06cc\u062d \u0645\u06cc\u200c\u062f\u0645) \u0631\u0648 \u062c\u0645\u0639 \u06a9\u0646\u0647\u060c \u0628\u0627\u06cc\u062f \u062f\u0647\u200c\u062c\u0648\u0631 \u06a9\u062a\u0627\u0628\u062e\u0648\u0646\u0647 \u0648 Agent \u0645\u06cc\u200c\u0630\u0627\u0634\u062a \u06a9\u0647 \u0647\u0631 \u06a9\u062f\u0648\u0645\u060c \u062f\u0627\u062f\u0647\u200c\u0647\u0627\u0634 \u0631\u0648 \u06cc\u0647 \u062c\u0648\u0631 \u0645\u062e\u062a\u0644\u0641 \u062a\u062d\u0648\u06cc\u0644 \u0645\u06cc\u200c\u062f\u0627\u062f. \u062e\u0644\u0627\u0635\u0647 \u0622\u0634\u0641\u062a\u0647 \u0645\u06cc\u200c\u0634\u062f!<\/p>\n\n\n\n<p>\u0627\u06cc\u0646\u062c\u0627 \u0628\u0648\u062f \u06a9\u0647 \u067e\u0631\u0648\u0698\u0647\u200c\u0647\u0627\u06cc \u0645\u062e\u062a\u0644\u0641\u06cc \u0645\u062b\u0644 <strong>OpenTracing<\/strong> \u0648 <strong>OpenCensus<\/strong> \u0633\u0639\u06cc \u06a9\u0631\u062f\u0646 \u0627\u06cc\u0646 \u0645\u0634\u06a9\u0644 \u0631\u0648 \u062d\u0644 \u06a9\u0646\u0646 \u0627\u0645\u0627 \u0647\u0631\u062f\u0648\u0634\u0648\u0646 \u062a\u0627 \u062d\u062f\u06cc \u0645\u0648\u0627\u0632\u06cc \u067e\u06cc\u0634 \u0645\u06cc\u200c\u0631\u0641\u062a\u0646 \u0648 \u0647\u0646\u0648\u0632 \u06cc\u0647 \u0627\u0633\u062a\u0627\u0646\u062f\u0627\u0631\u062f \u06cc\u06a9\u06cc \u0646\u0628\u0648\u062f. <strong>Cloud Native Computing Foundation (CNCF)<\/strong> \u0627\u0648\u0645\u062f \u06af\u0641\u062a \u0628\u06cc\u0627 \u0627\u06cc\u0646 \u062f\u0648\u062a\u0627 \u0631\u0648 \u0628\u0627\u0647\u0645 \u06cc\u06a9\u06cc \u06a9\u0646\u06cc\u0645 \u06a9\u0647 \u06cc\u0647 \u0627\u0633\u062a\u0627\u0646\u062f\u0627\u0631\u062f \u062f\u0631\u0633\u062a \u0648 \u062d\u0633\u0627\u0628\u06cc \u0648 \u0648\u0627\u062d\u062f \u062f\u0631\u0633\u062a \u0628\u0634\u0647. \u0627\u0632 \u062a\u0631\u06a9\u06cc\u0628 \u0627\u06cc\u0646 \u062f\u0648\u062a\u0627\u060c \u0645\u062d\u0635\u0648\u0644 \u062c\u062f\u06cc\u062f\u06cc \u0628\u0647 \u0627\u0633\u0645 <strong>OpenTelemetry<\/strong> \u0645\u062a\u0648\u0644\u062f \u0634\u062f. \u062d\u0627\u0644\u0627 \u062f\u06cc\u06af\u0647 \u0627\u06cc\u0646 \u0627\u0633\u062a\u0627\u0646\u062f\u0627\u0631\u062f \u0627\u0632 \u0637\u0631\u0641 \u06a9\u0644\u06cc \u0634\u0631\u06a9\u062a \u0648 \u0627\u0628\u0632\u0627\u0631 \u062a\u062c\u0627\u0631\u06cc \u0648 \u0627\u0648\u067e\u0646\u200c\u0633\u0648\u0631\u0633 \u0633\u0627\u067e\u0648\u0631\u062a \u0645\u06cc\u200c\u0634\u0647.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">OpenTelemetry \u062f\u0642\u06cc\u0642\u0627\u064b \u0686\u06cc\u0647\u061f<\/h3>\n\n\n\n<p>\u0628\u0647 \u0632\u0628\u0627\u0646 \u062e\u06cc\u0644\u06cc \u0633\u0627\u062f\u0647\u060c <strong>OpenTelemetry<\/strong> \u0627\u0628\u0632\u0627\u0631 (\u06cc\u0627 \u0628\u0647\u062a\u0631\u0647 \u0628\u06af\u06cc\u0645 \u06cc\u0647 \u0645\u062c\u0645\u0648\u0639\u0647 \u0627\u0628\u0632\u0627\u0631) \u0648 \u0686\u0647\u0627\u0631\u0686\u0648\u0628\u06cc\u0647 \u06a9\u0647 \u06a9\u0645\u06a9 \u0645\u06cc\u200c\u06a9\u0646\u0647 \u0628\u062a\u0648\u0646\u06cc\u0645 <strong>\u062f\u0627\u062f\u0647\u200c\u0647\u0627\u06cc \u0645\u0631\u0628\u0648\u0637 \u0628\u0647 \u0644\u0627\u06af\u200c\u0647\u0627\u060c \u0645\u062a\u0631\u06cc\u06a9\u200c\u0647\u0627 \u0648 \u062a\u0631\u06cc\u0633\u200c\u0647\u0627<\/strong> \u0631\u0648 \u0628\u0647 \u0634\u06a9\u0644 \u0627\u0633\u062a\u0627\u0646\u062f\u0627\u0631\u062f\u06cc \u062c\u0645\u0639 \u06a9\u0646\u06cc\u0645 \u0648 \u0628\u0641\u0631\u0633\u062a\u06cc\u0645 \u0647\u0631 \u062c\u0627\u06cc\u06cc \u06a9\u0647 \u0645\u06cc\u200c\u062e\u0648\u0627\u06cc\u0645. \u0645\u062b\u0644\u0627\u064b \u0645\u06cc\u200c\u062a\u0648\u0646\u06cc\u0645 \u0628\u0641\u0631\u0633\u062a\u06cc\u0645 \u0628\u0647 Elastic, Prometheus, Jaeger, Datadog \u0648&#8230; \u0628\u062f\u0648\u0646 \u0627\u06cc\u0646\u06a9\u0647 \u0645\u062c\u0628\u0648\u0631 \u0628\u0634\u06cc\u0645 \u062a\u0648\u06cc \u06a9\u062f\u0645\u0648\u0646 \u06a9\u0644\u06cc \u062a\u063a\u06cc\u06cc\u0631\u0627\u062a \u0639\u062c\u06cc\u0628 \u0648 \u063a\u0631\u06cc\u0628 \u0628\u062f\u06cc\u0645. \u0646\u06a9\u062a\u0647 \u0628\u0627\u062d\u0627\u0644 \u0627\u06cc\u0646\u0647 \u06a9\u0647 OTel \u062e\u0648\u062f\u0634 \u0628\u06a9\u200c\u0627\u0646\u062f \u0645\u0627\u0646\u06cc\u062a\u0648\u0631\u06cc\u0646\u06af \u06cc\u0627 \u062f\u06cc\u062a\u0627\u0628\u06cc\u0633 \u0646\u06af\u0647\u062f\u0627\u0631\u06cc \u062f\u0627\u062f\u0647\u200c\u0647\u0627\u06cc \u0645\u0627 \u0646\u06cc\u0633\u062a\u061b \u0641\u0642\u0637 \u06a9\u0627\u0631\u0634 \u062a\u0648\u0644\u06cc\u062f\u060c \u062c\u0645\u0639\u200c\u0622\u0648\u0631\u06cc \u0648 \u0627\u0631\u0633\u0627\u0644 \u0627\u06cc\u0646 \u062f\u0627\u062f\u0647\u200c\u0647\u0627 \u0628\u0647 \u0633\u0631\u0648\u06cc\u0633 \u0645\u062f \u0646\u0638\u0631\u0647.<\/p>\n\n\n\n<p><strong>\u0641\u0627\u06cc\u062f\u0647\u200c\u0627\u0634\u061f<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u0627\u0633\u062a\u0627\u0646\u062f\u0627\u0631\u062f \u06a9\u0631\u062f\u0646 \u0641\u0631\u0645\u062a \u062f\u0627\u062f\u0647\u200c\u0647\u0627 (\u06cc\u0639\u0646\u06cc \u0647\u0631 \u06a9\u06cc \u0648 \u0647\u0631 \u0633\u0631\u0648\u06cc\u0633\u06cc \u06af\u0641\u062a \u0644\u0627\u06af\u060c \u062a\u0631\u06cc\u0633\u060c \u0645\u062a\u0631\u06cc\u06a9\u061b \u062f\u06cc\u06af\u0647 \u0645\u0634\u062e\u0635\u0647 \u0686\u06cc \u0631\u0648 \u0686\u0647 \u0634\u06a9\u0644\u06cc \u0645\u06cc\u200c\u0641\u0631\u0633\u062a\u0647\u060c \u062d\u0627\u0644\u0627 \u0645\u06cc \u062e\u0648\u0627\u062f \u06cc\u0647 \u0646\u0631\u0645\u200c\u0627\u0641\u0632\u0627\u0631 \u062c\u0627\u0648\u0627\u06cc\u06cc \u0628\u0627\u0634\u0647\u060c \u06cc\u0627 \u06cc\u0647 \u06a9\u062f \u062f\u0627\u062a\u200c\u0646\u062a \u06cc\u0627 \u0646\u0631\u0645\u200c\u0627\u0641\u0632\u0627\u0631 IoT).<\/li>\n\n\n\n<li>\u062c\u062f\u0627\u06a9\u0631\u062f\u0646 \u0627\u0628\u0632\u0627\u0631 \u062c\u0645\u0639\u200c\u0622\u0648\u0631\u06cc \u062f\u0627\u062f\u0647 \u0627\u0632 \u0645\u062d\u0644 \u0630\u062e\u06cc\u0631\u0647 \u0648 \u062a\u062d\u0644\u06cc\u0644 \u062f\u0627\u062f\u0647. \u06cc\u0639\u0646\u06cc \u0645\u06cc\u200c\u062a\u0648\u0646\u06cc\u062f \u062e\u06cc\u0644\u06cc \u0631\u0627\u062d\u062a \u0627\u0628\u0632\u0627\u0631 \u0628\u06a9\u200c\u0627\u0646\u062f\u062a\u0648\u0646 \u0631\u0648 \u0639\u0648\u0636 \u06a9\u0646\u06cc\u062f (\u0627\u0628\u0632\u0627\u0631 \u062f\u0631\u06cc\u0627\u0641\u062a \u0648 \u0630\u062e\u06cc\u0631\u0647\u200c\u0633\u0627\u0632\u06cc \u0648 \u062a\u062d\u0644\u06cc\u0644 \u062f\u0627\u062f\u0647\u200c\u0647\u0627\u06cc \u062f\u0631\u06cc\u0627\u0641\u062a \u0634\u062f\u0647 \u0628\u0627 \u0627\u0633\u062a\u0627\u0646\u062f\u0627\u0631\u062f OpenTelemetry).<\/li>\n\n\n\n<li>\u067e\u0634\u062a\u06cc\u0628\u0627\u0646\u06cc \u062a\u0648\u0633\u0637 \u0627\u06a9\u062b\u0631 \u0632\u0628\u0627\u0646\u200c\u0647\u0627 \u0648 \u0641\u0631\u06cc\u0645\u200c\u0648\u0631\u06a9\u200c\u0647\u0627\u061b \u067e\u0633 \u0627\u06af\u0647 \u06cc\u0647 \u06af\u0648\u0634\u0647 \u067e\u0631\u0648\u0698\u0647\u200c\u062a\u0648\u0646 \u0628\u0627 Go \u0646\u0648\u0634\u062a\u0647 \u0634\u062f\u0647 \u0648 \u06cc\u0647 \u06af\u0648\u0634\u0647 \u062f\u06cc\u06af\u0647 \u0628\u0627 \u062f\u0627\u062a\u200c\u0646\u062a\u060c \u0628\u0627\u0632 \u0647\u0645\u0647\u200c\u0627\u0634 \u0645\u06cc\u200c\u062a\u0648\u0646\u0647 \u062f\u0627\u062f\u0647\u200c\u0647\u0627 \u0631\u0648 \u06cc\u06a9\u067e\u0627\u0631\u0686\u0647 \u0628\u062f\u0647 \u0628\u06cc\u0631\u0648\u0646.<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">\u0633\u0647 \u067e\u0627\u06cc\u0647\u200c\u06cc \u0627\u0635\u0644\u06cc: \u0644\u0627\u06af\u200c\u0647\u0627\u060c \u0645\u062a\u0631\u06cc\u06a9\u200c\u0647\u0627 \u0648 \u062a\u0631\u06cc\u0633\u200c\u0647\u0627<\/h3>\n\n\n\n<ol class=\"wp-block-list\">\n<li><strong>\u0644\u0627\u06af\u200c\u0647\u0627 (Logs):<\/strong><br>\u06cc\u0647 \u062c\u0648\u0631\u0627\u06cc\u06cc \u0633\u0627\u062f\u0647\u200c\u062a\u0631\u06cc\u0646 \u0646\u0648\u0639 \u062f\u0627\u062f\u0647. \u0648\u0642\u062a\u06cc \u06cc\u0647 \u0686\u06cc\u0632\u06cc \u062a\u0648 \u0633\u06cc\u0633\u062a\u0645 \u0627\u062a\u0641\u0627\u0642 \u0645\u06cc\u200c\u0627\u0641\u062a\u0647\u060c \u0645\u0627 \u0645\u06cc\u0627\u06cc\u0645 \u0645\u06cc\u200c\u0646\u0648\u06cc\u0633\u06cc\u0645\u0634. \u0645\u062b\u0644\u0627\u064b \u00ab\u06a9\u0627\u0631\u0628\u0631 \u0641\u0644\u0627\u0646\u06cc \u0644\u0627\u06af\u06cc\u0646 \u06a9\u0631\u062f\u00bb\u060c \u00ab\u062e\u0637\u0627\u06cc \u06f5\u06f0\u06f0 \u067e\u06cc\u0634 \u0627\u0648\u0645\u062f\u00bb\u060c \u00ab\u0633\u0631\u0648\u06cc\u0633 \u0627\u06cc\u0645\u06cc\u0644 \u0641\u0644\u0627\u0646 \u067e\u06cc\u0627\u0645 \u0631\u0627 \u0627\u0631\u0633\u0627\u0644 \u06a9\u0631\u062f\u00bb \u0648 \u2026 \u0628\u0647 \u06a9\u0645\u06a9 \u0644\u0627\u06af\u200c\u0647\u0627 \u0645\u06cc\u200c\u0641\u0647\u0645\u06cc\u0645 \u06a9\u0647 \u0686\u0647 \u0648\u0642\u0627\u06cc\u0639\u06cc \u062f\u0631 \u0686\u0647 \u0632\u0645\u0627\u0646\u06cc \u0631\u062e \u062f\u0627\u062f\u0647. (\u062f\u0648 \u062c\u0648\u0631 \u0644\u0627\u06af \u0647\u0645 \u062f\u0627\u0631\u06cc\u0645\u060c \u0644\u0627\u06af \u0633\u0627\u062e\u062a\u0627\u0631\u0645\u0646\u062f \u0648 \u063a\u06cc\u0631\u0633\u0627\u062e\u062a\u0627\u0631\u06cc -&gt; Structured Log, Unstructured Log)<\/li>\n\n\n\n<li><strong>\u0645\u062a\u0631\u06cc\u06a9\u200c\u0647\u0627 (Metrics):<\/strong><br>\u0639\u062f\u062f \u0648 \u0631\u0642\u0645\u200c\u0647\u0627\u06cc \u0632\u0645\u0627\u0646\u200c\u0628\u0646\u062f\u06cc\u200c\u0634\u062f\u0647. \u0645\u062b\u0644\u0627\u064b \u0646\u0631\u062e \u062f\u0631\u062e\u0648\u0627\u0633\u062a \u062f\u0631 \u062b\u0627\u0646\u06cc\u0647 (RPS) \u0686\u0642\u062f\u0631\u0647\u061f CPU \u06cc\u0627 \u0645\u0645\u0648\u0631\u06cc \u0645\u0635\u0631\u0641\u06cc \u0686\u0642\u062f\u0631\u0647\u061f \u067e\u06cc\u0646\u06af \u06cc\u06a9 \u0633\u0631\u0648\u06cc\u0633 \u062f\u06cc\u06af\u0647 \u0686\u0642\u062f\u0631\u0647\u061f \u0628\u0627 \u0645\u062a\u0631\u06cc\u06a9\u200c\u0647\u0627 \u0645\u06cc\u200c\u062a\u0648\u0646\u06cc\u0645 \u0648\u0636\u0639\u06cc\u062a \u0639\u0645\u0644\u06a9\u0631\u062f \u0633\u06cc\u0633\u062a\u0645 \u0631\u0648 \u062a\u0648 \u0628\u0627\u0632\u0647\u200c\u0647\u0627\u06cc \u0632\u0645\u0627\u0646\u06cc \u0645\u062e\u062a\u0644\u0641 \u0645\u0627\u0646\u06cc\u062a\u0648\u0631 \u06a9\u0646\u06cc\u0645. \u062d\u062a\u06cc \u062f\u0627\u062f\u0647\u200c\u0647\u0627\u06cc \u0628\u06cc\u0632\u0646\u0633\u06cc: \u062a\u0639\u062f\u0627\u062f \u062e\u0631\u06cc\u062f\u0647\u0627\u06cc \u0645\u0648\u0641\u0642 \u062f\u0631 \u06cc\u06a9 \u0633\u0627\u0639\u062a\u060c \u062a\u0639\u062f\u0627\u062f \u062e\u0631\u0648\u062c\u06cc \u0627\u0632 \u0627\u0646\u0628\u0627\u0631 \u062f\u0631 \u06cc\u06a9 \u062f\u0642\u06cc\u0642\u0647\u060c \u0645\u0631\u062e\u0635\u06cc\u200c\u0647\u0627\u06cc \u062b\u0628\u062a \u0634\u062f\u0647 \u062f\u0631 \u06cc\u06a9 \u0647\u0641\u062a\u0647 \u0648&#8230;) \u06a9\u0647 \u0628\u0627\u0647\u0627\u0634\u0648\u0646 \u0645\u06cc\u0634\u0647 BAM (Business Activity Monitor) \u0648 Business Dashboard \u0633\u0627\u062e\u062a.<\/li>\n\n\n\n<li><strong>\u062a\u0631\u06cc\u0633\u200c\u0647\u0627 (Traces):<\/strong><br>\u0631\u062f\u06af\u06cc\u0631\u06cc \u062c\u0631\u06cc\u0627\u0646\u0650 \u062f\u0631\u062e\u0648\u0627\u0633\u062a\u200c\u0647\u0627\u060c \u062a\u0648\u06cc \u0633\u0631\u0648\u06cc\u0633\u200c\u0647\u0627\u06cc \u0645\u062e\u062a\u0644\u0641. \u0645\u062e\u0635\u0648\u0635\u0627\u064b \u0648\u0642\u062a\u06cc \u062f\u0627\u0631\u06cc\u0645 \u062a\u0648 \u06cc\u0647 \u0645\u0639\u0645\u0627\u0631\u06cc \u0645\u0627\u06cc\u06a9\u0631\u0648\u0633\u0631\u0648\u06cc\u0633\u06cc \u06a9\u0627\u0631 \u0645\u06cc\u200c\u06a9\u0646\u06cc\u0645\u060c \u0647\u0631 \u062f\u0631\u062e\u0648\u0627\u0633\u062a \u0645\u0645\u06a9\u0646\u0647 \u0627\u0632 \u062f\u0647\u200c\u0647\u0627 \u0633\u0631\u0648\u06cc\u0633 \u0631\u062f \u0628\u0634\u0647. \u0628\u0627 \u062a\u0631\u06cc\u0633\u200c\u0647\u0627 \u0631\u0627\u062d\u062a \u0645\u06cc\u200c\u0641\u0647\u0645\u06cc\u0645 \u06a9\u0647 \u0627\u06cc\u0646 \u062f\u0631\u062e\u0648\u0627\u0633\u062a \u06a9\u062c\u0627 \u0686\u0631\u062e\u06cc\u062f\u0647 \u0648 \u0627\u06af\u0647 \u0645\u0634\u06a9\u0644\u06cc \u067e\u06cc\u0634 \u0627\u0648\u0645\u062f\u0647\u060c \u06a9\u062c\u0627 \u06a9\u0646\u062f\u06cc \u06cc\u0627 \u062e\u0637\u0627 \u062f\u0627\u0634\u062a\u0647. \u062a\u0648\u06cc \u0633\u06cc\u0633\u062a\u0645\u200c\u0647\u0627\u06cc \u062a\u0648\u0632\u06cc\u0639\u200c\u0634\u062f\u0647 \u0627\u06cc\u0646 \u0645\u0627\u062c\u0631\u0627 \u062d\u06cc\u0627\u062a\u06cc\u0647 \u0648\u06af\u0631\u0646\u0647 \u0628\u0647 \u06a9\u0627\u0628\u0648\u0633 \u0634\u0628\u0627\u0646\u0647 \u0633\u0644\u0627\u0645 \u06a9\u0646\u06cc\u062f!<\/li>\n<\/ol>\n\n\n\n<p>\u0647\u0631 \u0633\u0647 \u062a\u0627\u06cc \u0627\u06cc\u0646\u200c\u0647\u0627 \u00ab\u0633\u06cc\u06af\u0646\u0627\u0644\u00bb\u0647\u0627\u06cc \u0645\u0647\u0645\u06cc \u0647\u0633\u062a\u0646 \u0628\u0631\u0627\u06cc \u0627\u06cc\u0646\u06a9\u0647 \u0633\u06cc\u0633\u062a\u0645 \u0631\u0648 <strong>Observable<\/strong> \u06a9\u0646\u06cc\u0645. \u06cc\u0639\u0646\u06cc \u0628\u062a\u0648\u0646\u06cc\u0645 \u0627\u0632 \u0628\u06cc\u0631\u0648\u0646 \u0628\u0641\u0647\u0645\u06cc\u0645 \u062f\u0627\u062e\u0644 \u0686\u0647 \u062e\u0628\u0631\u0647.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">\u0633\u0627\u062e\u062a\u0627\u0631 \u06a9\u0644\u06cc OpenTelemetry<\/h3>\n\n\n\n<p>\u067e\u06a9\u06cc\u062c\u200c\u0647\u0627\u06cc \u0645\u062e\u062a\u0644\u0641\u06cc \u062f\u0627\u0631\u0647 \u06a9\u0647 \u0647\u0631 \u06a9\u062f\u0648\u0645 \u06cc\u0647 \u06a9\u0627\u0631\u06cc \u0645\u06cc\u200c\u06a9\u0646\u0646:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>API<\/strong>: \u0627\u06cc\u0646 \u0628\u062e\u0634 \u062f\u0631 \u0632\u0628\u0627\u0646\u200c\u0647\u0627\u06cc \u0645\u062e\u062a\u0644\u0641 \u0627\u0631\u0627\u0626\u0647 \u0634\u062f\u0647\u061b \u062f\u0631 \u062f\u0627\u062a\u200c\u0646\u062a \u0647\u0645 API\u0647\u0627\u06cc\u06cc \u062f\u0627\u0631\u06cc\u0645 \u06a9\u0647 \u0627\u062c\u0627\u0632\u0647 \u0645\u06cc\u200c\u062f\u0647 \u06a9\u062f\u0645\u0648\u0646 \u0631\u0648 \u0628\u0631\u0627\u06cc \u062c\u0645\u0639\u200c\u0622\u0648\u0631\u06cc \u062a\u0631\u06cc\u0633 \u0648 \u0645\u062a\u0631\u06cc\u06a9 \u0648 \u0644\u0627\u06af \u062a\u062c\u0647\u06cc\u0632 \u06a9\u0646\u06cc\u0645. (<a href=\"https:\/\/www.nuget.org\/packages\/OpenTelemetry.Api\/1.10.0\">OpenTelemetry.Api<\/a>)<\/li>\n\n\n\n<li><strong>SDK<\/strong>: \u067e\u06cc\u0627\u062f\u0647\u200c\u0633\u0627\u0632\u06cc \u0647\u0645\u0648\u0646 API \u0648 \u0645\u0633\u0626\u0648\u0644\u06cc\u062a \u0645\u062f\u06cc\u0631\u06cc\u062a \u0648 \u0627\u0631\u0633\u0627\u0644 \u0627\u06cc\u0646 \u062f\u0627\u062f\u0647\u200c\u0647\u0627 \u0631\u0648 \u062f\u0627\u0631\u0647.<\/li>\n\n\n\n<li><strong>Instrumentation<\/strong>: \u06a9\u062a\u0627\u0628\u062e\u0648\u0646\u0647\u200c\u0647\u0627\u06cc \u0622\u0645\u0627\u062f\u0647\u200c\u0627\u06cc \u06a9\u0647 \u0628\u0631\u0627\u06cc \u06a9\u0627\u0631 \u0628\u0627 ASP.NET Core, HttpClient, SqlClient \u0648&#8230; \u0627\u0631\u0627\u0626\u0647 \u0634\u062f\u0646 \u062a\u0627 \u0628\u062f\u0648\u0646 \u062f\u0631\u062f\u0633\u0631 \u0627\u0636\u0627\u0641\u0647\u060c \u0628\u0634\u0647 \u062f\u0631\u062e\u0648\u0627\u0633\u062a\u200c\u0647\u0627 \u0648 \u0645\u062a\u0631\u06cc\u06a9\u200c\u0647\u0627 \u0631\u0648 \u062c\u0645\u0639 \u06a9\u0631\u062f.<\/li>\n\n\n\n<li><strong>Collector<\/strong>: \u06cc\u0647 \u0633\u0631\u0648\u06cc\u0633 \u0645\u062c\u0632\u0627\u0633\u062a \u06a9\u0647 \u062f\u0627\u062f\u0647\u200c\u0647\u0627\u06cc\u06cc \u06a9\u0647 OTel \u062a\u0648\u0644\u06cc\u062f \u0645\u06cc\u200c\u06a9\u0646\u0647 \u0631\u0648 \u062f\u0631\u06cc\u0627\u0641\u062a \u0645\u06cc\u200c\u06a9\u0646\u0647\u060c \u067e\u0631\u062f\u0627\u0632\u0634 \u0645\u06cc\u200c\u06a9\u0646\u0647 \u0648 \u0645\u06cc\u200c\u0641\u0631\u0633\u062a\u0647 \u0628\u0647 \u0647\u0631 \u0628\u06a9\u200c\u0627\u0646\u062f\u06cc \u06a9\u0647 \u062f\u0648\u0633\u062a \u062f\u0627\u0634\u062a\u0647 \u0628\u0627\u0634\u06cc\u062f. \u0627\u06cc\u0646 \u0648\u0633\u0637 \u0645\u06cc\u200c\u062a\u0648\u0646\u06cc\u0646 \u062f\u0627\u062f\u0647\u200c\u0647\u0627 \u0631\u0648 \u0641\u06cc\u0644\u062a\u0631\u060c \u063a\u0646\u06cc\u200c\u0633\u0627\u0632\u06cc (\u062f\u0627\u062f\u0647 \u0627\u0636\u0627\u0641\u0647 \u06a9\u0646\u06cc\u0646\u060c enrich \u06a9\u0646\u06cc\u0646) \u06cc\u0627 \u06cc\u0647 \u062c\u0627\u06cc \u062f\u06cc\u06af\u0647 \u0628\u0641\u0631\u0633\u062a\u06cc\u0646.<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">\u0645\u062b\u0627\u0644 \u06a9\u062f \u062f\u0631 .NET \u0628\u0631\u0627\u06cc \u062a\u0631\u06cc\u0633 \u0648 \u0645\u062a\u0631\u06cc\u06a9<\/h2>\n\n\n\n<p>\u0641\u0631\u0636 \u06a9\u0646\u06cc\u0645 \u06cc\u0647 \u067e\u0631\u0648\u0698\u0647 ASP.NET Core \u062f\u0627\u0631\u06cc\u0645 \u0648 \u0645\u06cc\u200c\u062e\u0648\u0627\u06cc\u0645 \u0627\u0632 OTel \u0628\u0631\u0627\u06cc \u062a\u0631\u06cc\u0633\u200c\u0647\u0627 \u0648 \u0645\u062a\u0631\u06cc\u06a9\u200c\u0647\u0627 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u06a9\u0646\u06cc\u0645. \u0627\u0648\u0644 \u0627\u0632 \u0647\u0645\u0647 \u0628\u0627\u06cc\u062f \u067e\u06a9\u06cc\u062c\u200c\u0647\u0627\u06cc \u0644\u0627\u0632\u0645 \u0631\u0648 \u0646\u0635\u0628 \u06a9\u0646\u06cc\u0645:<\/p>\n\n\n\n<div class=\"wp-block-kevinbatdorf-code-block-pro\" data-code-block-pro-font-family=\"Code-Pro-JetBrains-Mono\" style=\"font-size:.875rem;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;line-height:1.25rem;--cbp-tab-width:2;tab-size:var(--cbp-tab-width, 2)\"><span style=\"display:block;padding:16px 0 0 16px;margin-bottom:-1px;width:100%;text-align:left;background-color:#2e3440ff\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"54\" height=\"14\" viewBox=\"0 0 54 14\"><g fill=\"none\" fill-rule=\"evenodd\" transform=\"translate(1 1)\"><circle cx=\"6\" cy=\"6\" r=\"6\" fill=\"#FF5F56\" stroke=\"#E0443E\" stroke-width=\".5\"><\/circle><circle cx=\"26\" cy=\"6\" r=\"6\" fill=\"#FFBD2E\" stroke=\"#DEA123\" stroke-width=\".5\"><\/circle><circle cx=\"46\" cy=\"6\" r=\"6\" fill=\"#27C93F\" stroke=\"#1AAB29\" stroke-width=\".5\"><\/circle><\/g><\/svg><\/span><span role=\"button\" tabindex=\"0\" data-code=\"dotnet add package OpenTelemetry\ndotnet add package OpenTelemetry.Extensions.Hosting\ndotnet add package OpenTelemetry.Instrumentation.AspNetCore\ndotnet add package OpenTelemetry.Instrumentation.Http\ndotnet add package OpenTelemetry.Exporter.Console\n\" style=\"color:#d8dee9ff;display:none\" aria-label=\"Copy\" class=\"code-block-pro-copy-button\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" style=\"width:24px;height:24px\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\" stroke-width=\"2\"><path class=\"with-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-6 9l2 2 4-4\"><\/path><path class=\"without-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2\"><\/path><\/svg><\/span><pre class=\"shiki nord\" style=\"background-color: #2e3440ff\" tabindex=\"0\"><code><span class=\"line\"><span style=\"color: #88C0D0\">dotnet<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #A3BE8C\">add<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #A3BE8C\">package<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #A3BE8C\">OpenTelemetry<\/span><\/span>\n<span class=\"line\"><span style=\"color: #88C0D0\">dotnet<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #A3BE8C\">add<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #A3BE8C\">package<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #A3BE8C\">OpenTelemetry.Extensions.Hosting<\/span><\/span>\n<span class=\"line\"><span style=\"color: #88C0D0\">dotnet<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #A3BE8C\">add<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #A3BE8C\">package<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #A3BE8C\">OpenTelemetry.Instrumentation.AspNetCore<\/span><\/span>\n<span class=\"line\"><span style=\"color: #88C0D0\">dotnet<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #A3BE8C\">add<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #A3BE8C\">package<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #A3BE8C\">OpenTelemetry.Instrumentation.Http<\/span><\/span>\n<span class=\"line\"><span style=\"color: #88C0D0\">dotnet<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #A3BE8C\">add<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #A3BE8C\">package<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #A3BE8C\">OpenTelemetry.Exporter.Console<\/span><\/span>\n<span class=\"line\"><\/span><\/code><\/pre><\/div>\n\n\n\n<p>\u0628\u0639\u062f \u0645\u062b\u0644\u0627\u064b \u0645\u06cc\u0627\u06cc\u0645 \u062a\u0648 \u0641\u0627\u06cc\u0644 <code>Program.cs<\/code> (\u06cc\u0627 <code>Startup.cs<\/code>) \u06cc\u0647 \u0686\u06cc\u0632\u06cc \u0634\u0628\u06cc\u0647 \u0627\u06cc\u0646 \u0645\u06cc\u200c\u0646\u0648\u06cc\u0633\u06cc\u0645:<\/p>\n\n\n\n<div class=\"wp-block-kevinbatdorf-code-block-pro\" data-code-block-pro-font-family=\"Code-Pro-JetBrains-Mono\" style=\"font-size:.875rem;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;line-height:1.25rem;--cbp-tab-width:2;tab-size:var(--cbp-tab-width, 2)\"><span style=\"display:block;padding:16px 0 0 16px;margin-bottom:-1px;width:100%;text-align:left;background-color:#2e3440ff\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"54\" height=\"14\" viewBox=\"0 0 54 14\"><g fill=\"none\" fill-rule=\"evenodd\" transform=\"translate(1 1)\"><circle cx=\"6\" cy=\"6\" r=\"6\" fill=\"#FF5F56\" stroke=\"#E0443E\" stroke-width=\".5\"><\/circle><circle cx=\"26\" cy=\"6\" r=\"6\" fill=\"#FFBD2E\" stroke=\"#DEA123\" stroke-width=\".5\"><\/circle><circle cx=\"46\" cy=\"6\" r=\"6\" fill=\"#27C93F\" stroke=\"#1AAB29\" stroke-width=\".5\"><\/circle><\/g><\/svg><\/span><span role=\"button\" tabindex=\"0\" data-code=\"using OpenTelemetry.Resources;\nusing OpenTelemetry.Trace;\nusing OpenTelemetry.Metrics;\n\nvar builder = WebApplication.CreateBuilder(args);\n\n\/\/ \u0627\u0636\u0627\u0641\u0647 \u06a9\u0631\u062f\u0646 \u0633\u0631\u0648\u06cc\u0633\u200c\u0647\u0627\u06cc OTel\nbuilder.Services.AddOpenTelemetry()\n    .WithTracing(traceBuilder =&gt;\n    {\n        traceBuilder\n            .SetResourceBuilder(ResourceBuilder.CreateDefault().AddService(&quot;MyDotNetService&quot;))\n            .AddAspNetCoreInstrumentation()\n            .AddHttpClientInstrumentation()\n            \/\/ \u0645\u06cc\u200c\u062a\u0648\u0646\u06cc\u0645 \u0627\u06cc\u0646\u062c\u0627 \u0645\u062b\u0644\u0627\u064b SqlClient \u0631\u0648 \u0647\u0645 \u0627\u0636\u0627\u0641\u0647 \u06a9\u0646\u06cc\u0645\n            \/\/.AddSqlClientInstrumentation() \n            .AddConsoleExporter();\n    })\n    .WithMetrics(metricBuilder =&gt;\n    {\n        metricBuilder\n            .SetResourceBuilder(ResourceBuilder.CreateDefault().AddService(&quot;MyDotNetService&quot;))\n            .AddAspNetCoreInstrumentation()\n            .AddHttpClientInstrumentation()\n            .AddConsoleExporter();\n    });\n\nvar app = builder.Build();\n\napp.MapGet(&quot;\/&quot;, () =&gt; &quot;Hello, OpenTelemetry World!&quot;);\napp.Run();\n\" style=\"color:#d8dee9ff;display:none\" aria-label=\"Copy\" class=\"code-block-pro-copy-button\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" style=\"width:24px;height:24px\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\" stroke-width=\"2\"><path class=\"with-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-6 9l2 2 4-4\"><\/path><path class=\"without-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2\"><\/path><\/svg><\/span><pre class=\"shiki nord\" style=\"background-color: #2e3440ff\" tabindex=\"0\"><code><span class=\"line\"><span style=\"color: #81A1C1\">using<\/span><span style=\"color: #D8DEE9FF\"> OpenTelemetry<\/span><span style=\"color: #ECEFF4\">.<\/span><span style=\"color: #D8DEE9FF\">Resources<\/span><span style=\"color: #81A1C1\">;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #81A1C1\">using<\/span><span style=\"color: #D8DEE9FF\"> OpenTelemetry<\/span><span style=\"color: #ECEFF4\">.<\/span><span style=\"color: #D8DEE9FF\">Trace<\/span><span style=\"color: #81A1C1\">;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #81A1C1\">using<\/span><span style=\"color: #D8DEE9FF\"> OpenTelemetry<\/span><span style=\"color: #ECEFF4\">.<\/span><span style=\"color: #D8DEE9FF\">Metrics<\/span><span style=\"color: #81A1C1\">;<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color: #81A1C1\">var<\/span><span style=\"color: #D8DEE9FF\"> builder <\/span><span style=\"color: #81A1C1\">=<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">WebApplication<\/span><span style=\"color: #ECEFF4\">.<\/span><span style=\"color: #88C0D0\">CreateBuilder<\/span><span style=\"color: #ECEFF4\">(<\/span><span style=\"color: #D8DEE9\">args<\/span><span style=\"color: #ECEFF4\">)<\/span><span style=\"color: #81A1C1\">;<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color: #616E88\">\/\/ \u0627\u0636\u0627\u0641\u0647 \u06a9\u0631\u062f\u0646 \u0633\u0631\u0648\u06cc\u0633\u200c\u0647\u0627\u06cc OTel<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9\">builder<\/span><span style=\"color: #ECEFF4\">.<\/span><span style=\"color: #D8DEE9\">Services<\/span><span style=\"color: #ECEFF4\">.<\/span><span style=\"color: #88C0D0\">AddOpenTelemetry<\/span><span style=\"color: #ECEFF4\">()<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    <\/span><span style=\"color: #ECEFF4\">.<\/span><span style=\"color: #88C0D0\">WithTracing<\/span><span style=\"color: #ECEFF4\">(<\/span><span style=\"color: #D8DEE9FF\">traceBuilder <\/span><span style=\"color: #81A1C1\">=&gt;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    <\/span><span style=\"color: #ECEFF4\">{<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">        <\/span><span style=\"color: #D8DEE9\">traceBuilder<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">            <\/span><span style=\"color: #ECEFF4\">.<\/span><span style=\"color: #88C0D0\">SetResourceBuilder<\/span><span style=\"color: #ECEFF4\">(<\/span><span style=\"color: #D8DEE9\">ResourceBuilder<\/span><span style=\"color: #ECEFF4\">.<\/span><span style=\"color: #88C0D0\">CreateDefault<\/span><span style=\"color: #ECEFF4\">().<\/span><span style=\"color: #88C0D0\">AddService<\/span><span style=\"color: #ECEFF4\">(<\/span><span style=\"color: #ECEFF4\">&quot;<\/span><span style=\"color: #A3BE8C\">MyDotNetService<\/span><span style=\"color: #ECEFF4\">&quot;<\/span><span style=\"color: #ECEFF4\">))<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">            <\/span><span style=\"color: #ECEFF4\">.<\/span><span style=\"color: #88C0D0\">AddAspNetCoreInstrumentation<\/span><span style=\"color: #ECEFF4\">()<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">            <\/span><span style=\"color: #ECEFF4\">.<\/span><span style=\"color: #88C0D0\">AddHttpClientInstrumentation<\/span><span style=\"color: #ECEFF4\">()<\/span><\/span>\n<span class=\"line\"><span style=\"color: #ECEFF4\">            <\/span><span style=\"color: #616E88\">\/\/ \u0645\u06cc\u200c\u062a\u0648\u0646\u06cc\u0645 \u0627\u06cc\u0646\u062c\u0627 \u0645\u062b\u0644\u0627\u064b SqlClient \u0631\u0648 \u0647\u0645 \u0627\u0636\u0627\u0641\u0647 \u06a9\u0646\u06cc\u0645<\/span><\/span>\n<span class=\"line\"><span style=\"color: #ECEFF4\">            <\/span><span style=\"color: #616E88\">\/\/.AddSqlClientInstrumentation() <\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">            <\/span><span style=\"color: #ECEFF4\">.<\/span><span style=\"color: #88C0D0\">AddConsoleExporter<\/span><span style=\"color: #ECEFF4\">()<\/span><span style=\"color: #81A1C1\">;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    <\/span><span style=\"color: #ECEFF4\">})<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    <\/span><span style=\"color: #ECEFF4\">.<\/span><span style=\"color: #88C0D0\">WithMetrics<\/span><span style=\"color: #ECEFF4\">(<\/span><span style=\"color: #D8DEE9FF\">metricBuilder <\/span><span style=\"color: #81A1C1\">=&gt;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    <\/span><span style=\"color: #ECEFF4\">{<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">        <\/span><span style=\"color: #D8DEE9\">metricBuilder<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">            <\/span><span style=\"color: #ECEFF4\">.<\/span><span style=\"color: #88C0D0\">SetResourceBuilder<\/span><span style=\"color: #ECEFF4\">(<\/span><span style=\"color: #D8DEE9\">ResourceBuilder<\/span><span style=\"color: #ECEFF4\">.<\/span><span style=\"color: #88C0D0\">CreateDefault<\/span><span style=\"color: #ECEFF4\">().<\/span><span style=\"color: #88C0D0\">AddService<\/span><span style=\"color: #ECEFF4\">(<\/span><span style=\"color: #ECEFF4\">&quot;<\/span><span style=\"color: #A3BE8C\">MyDotNetService<\/span><span style=\"color: #ECEFF4\">&quot;<\/span><span style=\"color: #ECEFF4\">))<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">            <\/span><span style=\"color: #ECEFF4\">.<\/span><span style=\"color: #88C0D0\">AddAspNetCoreInstrumentation<\/span><span style=\"color: #ECEFF4\">()<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">            <\/span><span style=\"color: #ECEFF4\">.<\/span><span style=\"color: #88C0D0\">AddHttpClientInstrumentation<\/span><span style=\"color: #ECEFF4\">()<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">            <\/span><span style=\"color: #ECEFF4\">.<\/span><span style=\"color: #88C0D0\">AddConsoleExporter<\/span><span style=\"color: #ECEFF4\">()<\/span><span style=\"color: #81A1C1\">;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    <\/span><span style=\"color: #ECEFF4\">})<\/span><span style=\"color: #81A1C1\">;<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color: #81A1C1\">var<\/span><span style=\"color: #D8DEE9FF\"> app <\/span><span style=\"color: #81A1C1\">=<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">builder<\/span><span style=\"color: #ECEFF4\">.<\/span><span style=\"color: #88C0D0\">Build<\/span><span style=\"color: #ECEFF4\">()<\/span><span style=\"color: #81A1C1\">;<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9\">app<\/span><span style=\"color: #ECEFF4\">.<\/span><span style=\"color: #88C0D0\">MapGet<\/span><span style=\"color: #ECEFF4\">(<\/span><span style=\"color: #ECEFF4\">&quot;<\/span><span style=\"color: #A3BE8C\">\/<\/span><span style=\"color: #ECEFF4\">&quot;<\/span><span style=\"color: #ECEFF4\">,<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #ECEFF4\">()<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #81A1C1\">=&gt;<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #ECEFF4\">&quot;<\/span><span style=\"color: #A3BE8C\">Hello, OpenTelemetry World!<\/span><span style=\"color: #ECEFF4\">&quot;<\/span><span style=\"color: #ECEFF4\">)<\/span><span style=\"color: #81A1C1\">;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9\">app<\/span><span style=\"color: #ECEFF4\">.<\/span><span style=\"color: #88C0D0\">Run<\/span><span style=\"color: #ECEFF4\">()<\/span><span style=\"color: #81A1C1\">;<\/span><\/span>\n<span class=\"line\"><\/span><\/code><\/pre><\/div>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u0628\u0627 <strong><code>AddAspNetCoreInstrumentation()<\/code><\/strong>\u060c \u0645\u06cc\u200c\u06af\u06cc\u0645 \u0647\u0631 \u0631\u06cc\u06a9\u0648\u0626\u0633\u062a \u0648\u0631\u0648\u062f\u06cc \u0628\u0647 \u0633\u0627\u06cc\u062a \u0645\u0627 \u0645\u0627\u0646\u06cc\u062a\u0648\u0631 \u0628\u0634\u0647.<\/li>\n\n\n\n<li>\u0628\u0627 <strong><code>AddHttpClientInstrumentation()<\/code><\/strong>\u060c \u0647\u0631 \u062c\u0627\u06cc\u06cc \u06a9\u0647 \u0627\u0632 <code>HttpClient<\/code> \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0645\u06cc\u200c\u06a9\u0646\u06cc\u0645 \u062a\u0631\u06cc\u0633 \u06cc\u0627 \u0645\u062a\u0631\u06cc\u06a9 \u0628\u0631\u0627\u0634 \u062b\u0628\u062a \u0645\u06cc\u200c\u0634\u0647.<\/li>\n\n\n\n<li>\u0628\u0627 <strong><code>AddConsoleExporter()<\/code><\/strong>\u060c \u062f\u0627\u062f\u0647\u200c\u0647\u0627 \u0631\u0648 \u0645\u06cc\u200c\u0641\u0631\u0633\u062a\u06cc\u0645 \u062a\u0648 \u06a9\u0646\u0633\u0648\u0644 (\u0628\u0631\u0627\u06cc \u062a\u0633\u062a \u062e\u06cc\u0644\u06cc \u062e\u0648\u0628\u0647). \u062a\u0648\u06cc \u0645\u062d\u06cc\u0637 \u0648\u0627\u0642\u0639\u06cc \u0645\u0645\u06a9\u0646\u0647 \u0628\u062e\u0648\u0627\u06cc\u0645 \u0628\u0641\u0631\u0633\u062a\u06cc\u0645\u0634 \u0628\u0647 Jaeger, Zipkin, OTLP Collector \u06cc\u0627 \u0647\u0631 \u0633\u0631\u0648\u06cc\u0633 \u062f\u06cc\u06af\u0647\u200c\u0627\u06cc.<\/li>\n<\/ul>\n\n\n\n<p>\u0627\u06cc\u0646 \u06a9\u062f \u06cc\u0647 \u0634\u0631\u0648\u0639 \u0633\u0627\u062f\u0647\u200c\u0633\u061b \u0645\u06cc\u200c\u062a\u0648\u0646\u06cc\u0645 \u0628\u0639\u062f\u0627\u064b \u062c\u0646\u0628\u0647\u200c\u0647\u0627\u06cc \u062f\u06cc\u06af\u0647 (\u0645\u062a\u0631\u06cc\u06a9\u200c\u0647\u0627\u06cc \u062f\u0644\u062e\u0648\u0627\u0647\u060c \u0644\u0627\u06af\u200c\u0647\u0627 \u0648&#8230;) \u0631\u0648 \u0647\u0645 \u0627\u0636\u0627\u0641\u0647 \u06a9\u0646\u06cc\u0645.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">\u0627\u0633\u062a\u0642\u0644\u0627\u0644 \u0627\u0632 \u0627\u0628\u0632\u0627\u0631 \u062a\u062c\u0645\u06cc\u0639<\/h3>\n\n\n\n<p>\u0628\u0627 OTel\u060c \u0627\u06af\u0647 \u0627\u0645\u0631\u0648\u0632 \u062f\u0627\u062f\u0647\u200c\u0647\u0627\u062a\u0648\u0646 \u0631\u0648 \u0628\u0647 <strong>Jaeger<\/strong> \u0645\u06cc\u200c\u0641\u0631\u0633\u062a\u06cc\u0646 \u0648 \u0641\u0631\u062f\u0627 \u062a\u0635\u0645\u06cc\u0645 \u06af\u0631\u0641\u062a\u06cc\u0646 \u0628\u0631\u06cc\u0646 <strong>Elastic<\/strong> \u06cc\u0627 <strong>Datadog<\/strong>\u060c \u0628\u0631\u0627\u06cc <strong>\u0628\u062e\u0634 \u062c\u0645\u0639\u200c\u0622\u0648\u0631\u06cc<\/strong> \u0646\u06cc\u0627\u0632\u06cc \u0646\u06cc\u0633\u062a \u06a9\u0644\u06cc \u06a9\u062f \u0631\u0648 \u0628\u0631\u06cc\u0632\u06cc\u0646 \u062f\u0648\u0631. instrumentation\u200c\u062a\u0648\u0646 \u0633\u0631\u062c\u0627\u0634\u0647\u061b \u0641\u0642\u0637 <strong>Exporter<\/strong>\u062a\u0648\u0646 \u0639\u0648\u0636 \u0645\u06cc\u200c\u0634\u0647. \u0645\u062b\u0644\u0627\u064b \u062c\u0627\u06cc\u06cc \u06a9\u0647 \u0642\u0628\u0644\u0627\u064b <code>AddConsoleExporter()<\/code> \u062f\u0627\u0634\u062a\u06cc\u0646\u060c \u062d\u0627\u0644\u0627 <code>AddOtlpExporter()<\/code> \u06cc\u0627 <code>AddJaegerExporter()<\/code> \u06cc\u0627 \u0647\u0631 \u0686\u06cc \u0644\u0627\u0632\u0645 \u062f\u0627\u0631\u06cc\u0646 \u062c\u0627\u06cc\u06af\u0632\u06cc\u0646 \u0645\u06cc\u200c\u06a9\u0646\u06cc\u0646. \u0627\u06cc\u0646\u062c\u0648\u0631\u06cc \u0628\u0647 \u0631\u0627\u062d\u062a\u06cc \u0645\u06cc\u200c\u062a\u0648\u0646\u06cc\u0645 \u0627\u0632 <strong>Vendor Lock-In<\/strong> \u0641\u0631\u0627\u0631 \u06a9\u0646\u06cc\u0645.<\/p>\n\n\n\n<p>\u0627\u06cc\u0646 \u062f\u0627\u0633\u062a\u0627\u0646 \u0631\u0648 \u062e\u06cc\u0644\u06cc \u062f\u0642\u06cc\u0642\u200c\u062a\u0631 \u062f\u0631 \u0628\u0627\u0628 Aspire \u062e\u0648\u0627\u0647\u06cc\u062f \u062f\u06cc\u062f\u060c \u0645\u062b\u0644\u0627 \u062a\u0648\u06cc Aspire \u062f\u0631 \u0645\u062d\u06cc\u0637 \u062a\u0648\u0633\u0639\u0647 \u0627\u06cc\u0646 \u062f\u0627\u062f\u0647\u200c\u0647\u0627 \u062a\u0648\u06cc \u0627\u0628\u0632\u0627\u0631 \u0648\u0628\u06cc \u062e\u0648\u062f\u0634 \u06a9\u0647 \u0641\u0642\u0637 \u0646\u0645\u0627\u06cc\u0634 \u0645\u06cc\u200c\u062f\u0647 \u0648 \u0630\u062e\u06cc\u0631\u0647 \u0646\u0645\u06cc\u200c\u06a9\u0646\u0647 \u0646\u0634\u0648\u0646 \u062f\u0627\u062f\u0647 \u0645\u06cc\u200c\u0634\u0647\u060c \u0648\u0644\u06cc \u0645\u06cc\u200c\u062a\u0648\u0646\u06cc\u0645 \u0628\u0627 \u0647\u0645\u0648\u0646 \u0632\u06cc\u0631\u0633\u0627\u062e\u062a \u06a9\u0627\u0631\u06cc \u06a9\u0646\u06cc\u0645 \u06a9\u0647 \u0648\u0642\u062a\u06cc \u062a\u0648\u06cc \u0645\u062d\u06cc\u0637 acceptance \u06cc\u0627 production \u062f\u067e\u0644\u0648\u06cc \u06a9\u0631\u062f\u06cc\u0645 \u0645\u0633\u062a\u0642\u06cc\u0645 \u0628\u0631\u0647 \u062a\u0648\u06cc Datadog \u06cc\u0627 Elastic \u06cc\u0627 Azure Application Insights \ud83d\ude09<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">\u0646\u06a9\u0627\u062a\u06cc \u062f\u0631 \u0645\u0648\u0631\u062f \u062f\u0627\u062f\u0647\u200c\u0647\u0627\u06cc \u062e\u0631\u0648\u062c\u06cc<\/h3>\n\n\n\n<p><strong>\u0641\u0631\u0645\u062a \u0644\u0627\u06af<\/strong>: \u0627\u06af\u0647 \u0627\u0632 OTel \u0628\u0631\u0627\u06cc \u0644\u0627\u06af \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0645\u06cc\u200c\u06a9\u0646\u06cc\u062f\u060c \u0645\u06cc\u200c\u062a\u0648\u0646\u06cc\u062f \u0641\u0631\u0645\u062a JSON \u06cc\u0627 \u0647\u0631 \u0641\u0631\u0645\u062a \u0627\u0633\u062a\u0627\u0646\u062f\u0627\u0631\u062f \u062f\u06cc\u06af\u0647\u200c\u0627\u06cc \u0631\u0648 \u0627\u0646\u062a\u062e\u0627\u0628 \u06a9\u0646\u06cc\u062f. \u0627\u06cc\u062f\u0647 \u0627\u06cc\u0646\u0647 \u06a9\u0647 \u0647\u0645\u0647 \u0686\u06cc\u0632 \u0628\u0627 <strong>Schema<\/strong>\u0627\u06cc \u06a9\u0647 \u062a\u0648\u0633\u0637 OTel \u067e\u06cc\u0634\u0646\u0647\u0627\u062f \u0634\u062f\u0647 (Semantic Conventions) \u0647\u0645\u062e\u0648\u0646\u06cc \u062f\u0627\u0634\u062a\u0647 \u0628\u0627\u0634\u0647.<\/p>\n\n\n\n<p><strong>\u0645\u062a\u0631\u06cc\u06a9\u200c\u0647\u0627<\/strong>: \u0645\u0639\u0645\u0648\u0644\u0627\u064b \u06cc\u0647 \u0633\u0631\u06cc \u0645\u062a\u0631\u06cc\u06a9 \u0645\u062b\u0644 \u062a\u0639\u062f\u0627\u062f \u062f\u0631\u062e\u0648\u0627\u0633\u062a \u0645\u0648\u0641\u0642\u060c \u062a\u0639\u062f\u0627\u062f \u062f\u0631\u062e\u0648\u0627\u0633\u062a \u0646\u0627\u0645\u0648\u0641\u0642\u060c \u0645\u062f\u062a \u067e\u0627\u0633\u062e (Latency) \u0648&#8230; \u0628\u0647 \u0635\u0648\u0631\u062a \u067e\u06cc\u0634\u200c\u0641\u0631\u0636 \u062c\u0645\u0639 \u0645\u06cc\u200c\u0634\u0647. \u0627\u06af\u0647 \u062e\u0648\u0627\u0633\u062a\u06cc\u0646 \u0645\u062a\u0631\u06cc\u06a9 \u0633\u0641\u0627\u0631\u0634\u06cc \u062f\u0627\u0634\u062a\u0647 \u0628\u0627\u0634\u06cc\u0646 (\u0645\u062b\u0644\u0627\u064b \u062a\u0639\u062f\u0627\u062f \u0633\u0628\u062f\u0647\u0627\u06cc \u062e\u0631\u06cc\u062f \u062a\u0633\u0648\u06cc\u0647\u200c\u0634\u062f\u0647)\u060c \u0627\u0632 \u0637\u0631\u06cc\u0642 <code>Meter<\/code> \u0648 <code>Counter<\/code>\u0647\u0627 \u062f\u0631 .NET \u0645\u06cc\u200c\u0634\u0647 \u062e\u06cc\u0644\u06cc \u0631\u0627\u062d\u062a \u0628\u0633\u0627\u0632\u06cc\u0646.<\/p>\n\n\n\n<p><strong>\u062a\u0631\u06cc\u0633\u200c\u0647\u0627<\/strong>: \u0647\u0631 \u062a\u0631\u06cc\u0633 \u0645\u062c\u0645\u0648\u0639\u0647\u200c\u0627\u06cc \u0627\u0632 Span \u0647\u0627\u0633\u062a \u06a9\u0647 \u0646\u0634\u0648\u0646 \u0645\u06cc\u200c\u062f\u0647 \u06cc\u0647 \u062f\u0631\u062e\u0648\u0627\u0633\u062a \u0686\u0637\u0648\u0631\u06cc \u0628\u06cc\u0646 \u0633\u0631\u0648\u06cc\u0633\u200c\u0647\u0627 \u062d\u0631\u06a9\u062a \u06a9\u0631\u062f\u0647. \u0645\u06cc\u200c\u062a\u0648\u0646\u06cc\u0645 \u0628\u0631\u0627\u06cc \u0647\u0631 Span \u062a\u06af\u200c\u0647\u0627 \u0648 Annotation\u0647\u0627\u06cc \u062f\u0644\u062e\u0648\u0627\u0647 \u0628\u0641\u0631\u0633\u062a\u06cc\u0645 \u062a\u0627 \u062a\u0648 \u0633\u0631\u0648\u06cc\u0633\u200c\u0647\u0627\u06cc \u062a\u0631\u06cc\u0633\u06cc\u0646\u06af \u0628\u062a\u0648\u0646\u06cc\u0645 \u0631\u06cc\u0632\u062c\u0632\u0626\u06cc\u0627\u062a \u0631\u0648 \u0628\u0628\u06cc\u0646\u06cc\u0645.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">\u062e\u0644\u0627\u0635\u0647: \u0686\u0631\u0627 \u0645\u0647\u0645\u0647\u061f<\/h3>\n\n\n\n<ol class=\"wp-block-list\">\n<li><strong>\u06cc\u06a9\u06cc \u0634\u062f\u0646 \u0641\u0631\u0645\u062a<\/strong>: \u062f\u06cc\u06af\u0647 \u0647\u0632\u0627\u0631 \u0634\u06a9\u0644 \u0645\u062e\u062a\u0644\u0641 \u062f\u0627\u062f\u0647 \u0646\u062f\u0627\u0631\u06cc\u0645. \u0647\u0645\u0647 \u0686\u06cc\u0632 \u0631\u0648 \u0628\u0627 \u06cc\u0647 \u0627\u0633\u062a\u0627\u0646\u062f\u0627\u0631\u062f \u0645\u06cc\u200c\u06af\u06cc\u0631\u06cc\u0645\u060c \u0628\u0639\u062f \u0647\u0631 \u062c\u0627 \u062f\u0644\u0645\u0648\u0646 \u0628\u062e\u0648\u0627\u062f \u0645\u06cc\u200c\u0641\u0631\u0633\u062a\u06cc\u0645.<\/li>\n\n\n\n<li><strong>\u0622\u06cc\u0646\u062f\u0647\u200c\u0646\u06af\u0631\u06cc<\/strong>: \u0633\u0631\u06cc\u0639\u200c\u062a\u0631 \u0645\u06cc\u200c\u062a\u0648\u0646\u06cc\u0645 \u0628\u06a9\u200c\u0627\u0646\u062f\u0647\u0627\u06cc \u0645\u062e\u062a\u0644\u0641 \u0631\u0648 \u062a\u063a\u06cc\u06cc\u0631 \u0628\u062f\u06cc\u0645 (\u06cc\u0627 \u062d\u062a\u06cc \u0686\u0646\u062f\u062a\u0627 \u0647\u0645\u0632\u0645\u0627\u0646 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u06a9\u0646\u06cc\u0645) \u0628\u062f\u0648\u0646 \u0627\u06cc\u0646\u06a9\u0647 \u062f\u0631\u062f\u0633\u0631 \u0632\u06cc\u0627\u062f \u062f\u0627\u0634\u062a\u0647 \u0628\u0627\u0634\u06cc\u0645.<\/li>\n\n\n\n<li><strong>\u0627\u062c\u0627\u0632\u0647 \u0628\u0647 \u062a\u06cc\u0645\u200c\u0647\u0627 \u0628\u0631\u0627\u06cc \u0627\u0646\u062a\u062e\u0627\u0628 \u0627\u0628\u0632\u0627\u0631<\/strong>: \u0647\u0631 \u062a\u06cc\u0645 \u0645\u06cc\u200c\u062a\u0648\u0646\u0647 \u0627\u0628\u0632\u0627\u0631 \u0645\u0648\u0631\u062f \u0639\u0644\u0627\u0642\u0647\u200c\u0627\u0634 (\u0645\u062b\u0644\u0627\u064b Prometheus \u06cc\u0627 Elastic) \u0631\u0648 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u06a9\u0646\u0647 \u0648 \u062f\u0631 \u0639\u06cc\u0646 \u062d\u0627\u0644 \u0627\u0632 \u0647\u0645\u0627\u0646 OTel data \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u06a9\u0646\u0647.<\/li>\n\n\n\n<li><strong>\u0633\u0627\u062f\u0647 \u0634\u062f\u0646 \u0639\u0645\u0644\u06cc\u0627\u062a<\/strong>: \u06a9\u062f instrumentation \u0631\u0648 \u06cc\u0647\u200c\u0628\u0627\u0631 \u0645\u06cc\u200c\u0646\u0648\u06cc\u0633\u06cc\u0645 (\u06cc\u0627 \u062d\u062a\u06cc \u0627\u0632 Auto-instrumentation \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0645\u06cc\u200c\u06a9\u0646\u06cc\u0645). \u0628\u0639\u062f\u0634 \u0627\u0631\u0633\u0627\u0644 \u0628\u0647 \u0647\u0631 \u062c\u0627 \u0631\u0648 \u0628\u0627 \u062a\u0646\u0638\u06cc\u0645\u0627\u062a \u0633\u0627\u062f\u0647 \u06a9\u0646\u062a\u0631\u0644 \u0645\u06cc\u200c\u06a9\u0646\u06cc\u0645.<\/li>\n<\/ol>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">\u0646\u062a\u06cc\u062c\u0647\u200c\u06af\u06cc\u0631\u06cc<\/h3>\n\n\n\n<p>\u0627\u06af\u0647 \u0645\u06cc\u200c\u062e\u0648\u0627\u06cc\u062f \u06cc\u0647 \u0631\u0627\u0647 \u0627\u0633\u062a\u0627\u0646\u062f\u0627\u0631\u062f \u0628\u0631\u0627\u06cc \u062c\u0645\u0639\u200c\u0622\u0648\u0631\u06cc \u0648 \u0627\u0631\u0633\u0627\u0644 \u0644\u0627\u06af\u200c\u0647\u0627\u060c \u0645\u062a\u0631\u06cc\u06a9\u200c\u0647\u0627 \u0648 \u062a\u0631\u06cc\u0633\u200c\u0647\u0627 \u062f\u0627\u0634\u062a\u0647 \u0628\u0627\u0634\u06cc\u062f \u06a9\u0647 \u0647\u0645 \u0628\u0627 \u062a\u06a9\u0646\u0648\u0644\u0648\u0698\u06cc\u200c\u0647\u0627\u06cc \u062f\u06cc\u06af\u0647 \u0647\u0645\u0633\u0627\u0632 \u0628\u0627\u0634\u0647 \u0648 \u0647\u0645 \u0645\u062c\u0628\u0648\u0631 \u0646\u0634\u06cc\u062f \u062e\u0648\u062f\u062a\u0648\u0646 \u0631\u0648 \u0628\u0647 \u06cc\u0647 \u0633\u0631\u0648\u06cc\u0633 \u062e\u0627\u0635 \u0642\u0641\u0644 \u06a9\u0646\u06cc\u062f\u060c <strong>OpenTelemetry<\/strong> \u0628\u0647\u062a\u0631\u06cc\u0646 \u06af\u0632\u06cc\u0646\u0647\u200c\u0633\u062a.<\/p>\n\n\n\n<p>\u0641\u0642\u0637 \u062d\u0648\u0627\u0633\u062a\u0648\u0646 \u0628\u0627\u0634\u0647 \u06a9\u0647 OTel <strong>\u0627\u0628\u0632\u0627\u0631 \u0645\u0627\u0646\u06cc\u062a\u0648\u0631\u06cc\u0646\u06af<\/strong> \u0646\u06cc\u0633\u062a\u060c \u0628\u0644\u06a9\u0647 \u067e\u0644 \u0627\u0631\u062a\u0628\u0627\u0637\u06cc \u0628\u06cc\u0646 \u06a9\u062f \u0634\u0645\u0627 \u0648 \u0633\u06cc\u0633\u062a\u0645\u200c\u0647\u0627\u06cc \u0645\u0627\u0646\u06cc\u062a\u0648\u0631\u06cc\u0646\u06af \u0648 \u062a\u062d\u0644\u06cc\u0644 \u062f\u0627\u062f\u0647\u200c\u0633\u062a. \u0628\u0627 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 \u067e\u06a9\u06cc\u062c\u200c\u0647\u0627 \u0648 \u0646\u0645\u0648\u0646\u0647\u200c\u06a9\u062f\u06cc \u06a9\u0647 \u062f\u06cc\u062f\u06cc\u0645\u060c \u062e\u06cc\u0644\u06cc \u0631\u0627\u062d\u062a \u0645\u06cc\u200c\u062a\u0648\u0646\u06cc\u062f \u06cc\u06a9\u06cc \u0627\u0632 \u0627\u06a9\u0633\u062a\u0646\u0634\u0646\u200c\u0647\u0627\u06cc \u0645\u0648\u0631\u062f \u0639\u0644\u0627\u0642\u0647\u200c\u062a\u0648\u0646 \u0631\u0648 \u0628\u0631\u0627\u06cc \u062f\u0627\u062a\u200c\u0646\u062a \u0631\u0627\u0647 \u0628\u0646\u062f\u0627\u0632\u06cc\u0646 \u0648 \u062f\u0627\u062f\u0647\u200c\u0647\u0627 \u0631\u0648 \u0647\u0631 \u062c\u0627\u06cc\u06cc \u06a9\u0647 \u0644\u0627\u0632\u0645 \u0628\u0627\u0634\u0647\u060c \u0628\u0641\u0631\u0633\u062a\u06cc\u062f.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<p><strong>\u067e\u06cc\u200c\u0646\u0648\u0634\u062a\u200c\u0647\u0627 \u0648 \u0645\u0646\u0627\u0628\u0639 \u0645\u0641\u06cc\u062f \u0628\u0631\u0627\u06cc \u0634\u0631\u0648\u0639<\/strong>:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><a href=\"https:\/\/github.com\/open-telemetry\/opentelemetry-dotnet\">\u0645\u062e\u0632\u0646 \u06af\u06cc\u062a\u200c\u0647\u0627\u0628 OpenTelemetry \u0628\u0631\u0627\u06cc \u062f\u0627\u062a\u200c\u0646\u062a<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/opentelemetry.io\/docs\/collector\/\">OpenTelemetry Collector<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/opentelemetry.io\/\">\u0645\u0633\u062a\u0646\u062f\u0627\u062a \u0631\u0633\u0645\u06cc OpenTelemetry.io<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/github.com\/open-telemetry\/opentelemetry-dotnet\/tree\/main\/examples\/AspNetCore\">\u06cc\u06a9 \u0645\u062b\u0627\u0644 \u0633\u0627\u062f\u0647 \u0627\u0632 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u062f\u0631 ASP.NET Core<\/a><\/li>\n<\/ul>\n\n\n\n<p><\/p>\n","protected":false},"excerpt":{"rendered":"<p>\u0645\u0642\u062f\u0645\u0647\u062d\u062a\u0645\u0627\u064b \u0627\u0633\u0645 OpenTelemetry (\u06cc\u0627 \u0647\u0645\u0648\u0646 OTel) \u0631\u0648 \u062d\u0648\u0644 \u0648 \u062d\u0648\u0634 \u0645\u0648\u0636\u0648\u0639\u0627\u062a \u0645\u0627\u0646\u06cc\u062a\u0648\u0631\u06cc\u0646\u06af \u0648 \u0644\u0627\u06af\u06cc\u0646\u06af\u060c \u0634\u0646\u06cc\u062f\u06cc\u0646. \u0647\u0631\u0686\u0642\u062f\u0631 \u062a\u0646\u0648\u0639 \u06a9\u0627\u0645\u067e\u0648\u0646\u0646\u062a\u200c\u0647\u0627\u060c \u0633\u0631\u0648\u06cc\u0633\u200c\u0647\u0627\u060c \u0627\u067e\u0644\u06cc\u06a9\u06cc\u0634\u0646\u200c\u0647\u0627 \u0628\u06cc\u0634\u062a\u0631 \u0628\u06cc\u0634\u062a\u0631 \u0628\u0634\u0647\u061b \u06cc\u0627 \u0628\u0647 \u0632\u0628\u0648\u0646 \u0633\u0627\u062f\u0647 \u0633\u06cc\u0633\u062a\u0645 \u062a\u0648\u0632\u06cc\u0639 \u0628\u0634\u0647\u060c \u0644\u0632\u0648\u0645 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 \u06cc\u06a9 \u0627\u0633\u062a\u0627\u0646\u062f\u0627\u0631\u062f \u06cc\u0627 \u0645\u06a9\u0627\u0646\u06cc\u0632\u0645 \u0641\u0631\u0627\u06af\u06cc\u0631\u060c \u0627\u0647\u0645\u06cc\u062a\u0634 \u0628\u06cc\u0634\u062a\u0631 \u0645\u06cc\u200c\u0634\u0647. \u0641\u06a9\u0631 \u06a9\u0646\u06cc\u062f \u0644\u0627\u06af \u0631\u0648 \u0628\u0627 \u06cc\u0647 \u0641\u0631\u0645\u062a\u06cc \u06a9\u0647 \u0645\u062e\u062a\u0635 \u062f\u0627\u062a\u200c\u0646\u062a \u0628\u0627\u0634\u0647 \u0628\u0646\u0648\u06cc\u0633\u06cc\u0645\u060c \u06cc\u0627 \u0627\u0646\u062f\u0627\u0632\u0647\u200c\u06af\u06cc\u0631\u06cc &#8230; <a title=\"\u062f\u0631 \u0628\u0627\u0628 OpenTelemetry\" class=\"read-more\" href=\"https:\/\/mesbahi.net\/fa\/blog\/1403\/10\/02\/intro-opentelemetry\/\" aria-label=\"\u062f\u0631\u0628\u0627\u0631\u06c0 \u062f\u0631 \u0628\u0627\u0628 OpenTelemetry \u0628\u06cc\u0634\u062a\u0631 \u0628\u062e\u0648\u0627\u0646\u06cc\u062f\">\u0627\u062f\u0627\u0645\u0647<\/a><\/p>\n","protected":false},"author":1,"featured_media":1144,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_uag_custom_page_level_css":"","_import_markdown_pro_load_document_selector":0,"_import_markdown_pro_submit_text_textarea":"","footnotes":""},"categories":[2,7,79],"tags":[11,92,93,90,91,42],"class_list":["post-1143","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-net","category-technical","category-79","tag-net","tag-distributed-systems","tag-microservices","tag-opentelemetry","tag-software-development","tag-software-engineering"],"uagb_featured_image_src":{"full":["https:\/\/mesbahi.net\/fa\/wp-content\/uploads\/sites\/3\/2024\/12\/a-humorous-scene-of-lego-bees-carrying-n_5j85aSVcTj-nF0fKOTf8qw_j2ZPBK-JT12hk4VURn83hw.jpeg",1312,736,false],"thumbnail":["https:\/\/mesbahi.net\/fa\/wp-content\/uploads\/sites\/3\/2024\/12\/a-humorous-scene-of-lego-bees-carrying-n_5j85aSVcTj-nF0fKOTf8qw_j2ZPBK-JT12hk4VURn83hw-150x150.jpeg",150,150,true],"medium":["https:\/\/mesbahi.net\/fa\/wp-content\/uploads\/sites\/3\/2024\/12\/a-humorous-scene-of-lego-bees-carrying-n_5j85aSVcTj-nF0fKOTf8qw_j2ZPBK-JT12hk4VURn83hw-300x168.jpeg",300,168,true],"medium_large":["https:\/\/mesbahi.net\/fa\/wp-content\/uploads\/sites\/3\/2024\/12\/a-humorous-scene-of-lego-bees-carrying-n_5j85aSVcTj-nF0fKOTf8qw_j2ZPBK-JT12hk4VURn83hw-768x431.jpeg",768,431,true],"large":["https:\/\/mesbahi.net\/fa\/wp-content\/uploads\/sites\/3\/2024\/12\/a-humorous-scene-of-lego-bees-carrying-n_5j85aSVcTj-nF0fKOTf8qw_j2ZPBK-JT12hk4VURn83hw-1024x574.jpeg",1024,574,true],"1536x1536":["https:\/\/mesbahi.net\/fa\/wp-content\/uploads\/sites\/3\/2024\/12\/a-humorous-scene-of-lego-bees-carrying-n_5j85aSVcTj-nF0fKOTf8qw_j2ZPBK-JT12hk4VURn83hw.jpeg",1312,736,false],"2048x2048":["https:\/\/mesbahi.net\/fa\/wp-content\/uploads\/sites\/3\/2024\/12\/a-humorous-scene-of-lego-bees-carrying-n_5j85aSVcTj-nF0fKOTf8qw_j2ZPBK-JT12hk4VURn83hw.jpeg",1312,736,false]},"uagb_author_info":{"display_name":"\u0627\u0645\u06cc\u0646 \u0645\u0635\u0628\u0627\u062d\u06cc","author_link":"https:\/\/mesbahi.net\/fa\/blog\/author\/amin\/"},"uagb_comment_info":0,"uagb_excerpt":"\u0645\u0642\u062f\u0645\u0647\u062d\u062a\u0645\u0627\u064b \u0627\u0633\u0645 OpenTelemetry (\u06cc\u0627 \u0647\u0645\u0648\u0646 OTel) \u0631\u0648 \u062d\u0648\u0644 \u0648 \u062d\u0648\u0634 \u0645\u0648\u0636\u0648\u0639\u0627\u062a \u0645\u0627\u0646\u06cc\u062a\u0648\u0631\u06cc\u0646\u06af \u0648 \u0644\u0627\u06af\u06cc\u0646\u06af\u060c \u0634\u0646\u06cc\u062f\u06cc\u0646. \u0647\u0631\u0686\u0642\u062f\u0631 \u062a\u0646\u0648\u0639 \u06a9\u0627\u0645\u067e\u0648\u0646\u0646\u062a\u200c\u0647\u0627\u060c \u0633\u0631\u0648\u06cc\u0633\u200c\u0647\u0627\u060c \u0627\u067e\u0644\u06cc\u06a9\u06cc\u0634\u0646\u200c\u0647\u0627 \u0628\u06cc\u0634\u062a\u0631 \u0628\u06cc\u0634\u062a\u0631 \u0628\u0634\u0647\u061b \u06cc\u0627 \u0628\u0647 \u0632\u0628\u0648\u0646 \u0633\u0627\u062f\u0647 \u0633\u06cc\u0633\u062a\u0645 \u062a\u0648\u0632\u06cc\u0639 \u0628\u0634\u0647\u060c \u0644\u0632\u0648\u0645 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 \u06cc\u06a9 \u0627\u0633\u062a\u0627\u0646\u062f\u0627\u0631\u062f \u06cc\u0627 \u0645\u06a9\u0627\u0646\u06cc\u0632\u0645 \u0641\u0631\u0627\u06af\u06cc\u0631\u060c \u0627\u0647\u0645\u06cc\u062a\u0634 \u0628\u06cc\u0634\u062a\u0631 \u0645\u06cc\u200c\u0634\u0647. \u0641\u06a9\u0631 \u06a9\u0646\u06cc\u062f \u0644\u0627\u06af \u0631\u0648 \u0628\u0627 \u06cc\u0647 \u0641\u0631\u0645\u062a\u06cc \u06a9\u0647 \u0645\u062e\u062a\u0635 \u062f\u0627\u062a\u200c\u0646\u062a \u0628\u0627\u0634\u0647 \u0628\u0646\u0648\u06cc\u0633\u06cc\u0645\u060c \u06cc\u0627 \u0627\u0646\u062f\u0627\u0632\u0647\u200c\u06af\u06cc\u0631\u06cc&hellip;","_links":{"self":[{"href":"https:\/\/mesbahi.net\/fa\/wp-json\/wp\/v2\/posts\/1143","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/mesbahi.net\/fa\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/mesbahi.net\/fa\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/mesbahi.net\/fa\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/mesbahi.net\/fa\/wp-json\/wp\/v2\/comments?post=1143"}],"version-history":[{"count":2,"href":"https:\/\/mesbahi.net\/fa\/wp-json\/wp\/v2\/posts\/1143\/revisions"}],"predecessor-version":[{"id":1149,"href":"https:\/\/mesbahi.net\/fa\/wp-json\/wp\/v2\/posts\/1143\/revisions\/1149"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/mesbahi.net\/fa\/wp-json\/wp\/v2\/media\/1144"}],"wp:attachment":[{"href":"https:\/\/mesbahi.net\/fa\/wp-json\/wp\/v2\/media?parent=1143"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/mesbahi.net\/fa\/wp-json\/wp\/v2\/categories?post=1143"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/mesbahi.net\/fa\/wp-json\/wp\/v2\/tags?post=1143"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}