Dmitriy Kononov
ვისაუბროთკონტაქტი

სიახლეები და ანალიზი

ტელემეტრიის ცვლილებას მონაცემთა მიგრაციის დისციპლინა სჭირდება

OpenTelemetry-ის, CNCF-ის, Cloudflare-ისა და Grafana-ს სიახლეები სიგნალების შეგროვებას ცვლის. როგორ შევინარჩუნოთ ინციდენტის გამოსაკვლევი მტკიცებულებები.

მეტრიკების შემგროვებლის განახლებამ შესაძლოა დიაგნოსტიკა დააზიანოს მაშინაც, როდესაც აპლიკაცია კვლავ პასუხობს. ახალი სახელები, ფილტრები და დისტანციური კონფიგურაცია ალერტების საყრდენ მონაცემებს ცვლის. ამიტომ ტელემეტრიის გამოშვება მიგრაციას უნდა ჰგავდეს: ცნობილ მომხმარებლებთან, შეზღუდულ გავრცელებასა და უკანდაბრუნების გზასთან ერთად.

OpenTelemetry-ის 13 ოქტომბრის მასალა hostmetrics-ის process scraper-ის ვერსირებულ RC მეტრიკებს ეხება. ეს მთელი receiver-ის სტაბილურობას არ ნიშნავს. Grafana-ს 8 ოქტომბრის განცხადება მხარდაჭერილ OTel Collector-ებზე Fleet Management-ის GA OpAMP მხარდაჭერას აღწერს. Cloudflare Transformers-ის მასალა ექსპორტამდე დამუშავებას ხსნის. CNCF-ის 15 ოქტომბრის პუბლიკაცია ნახშირბადის ინტენსივობის საერთო სემანტიკაში შეტანას განიხილავს. ეს მიმდინარე სამუშაოა და არა დასრულებული უნივერსალური სტანდარტი.

მომუშავე გრაფიკმაც შეიძლება მნიშვნელობა დაკარგოს

რთული ხარვეზი ხშირად წარმატებას ჰგავს: ექსპორტს შეცდომა არ აქვს, პანელი იხსნება და ხაზი მოძრაობს. თუმცა ერთეული, ატრიბუტები ან დაკვირვებული პროცესების ჯგუფი შეიცვალა. ძველ და ახალ მონაცემთა შედარება მცდარი ხდება. სინტაქსურად სწორი ალერტიც შეიძლება საჭირო მდგომარეობას ვეღარ ამჩნევდეს.

სიახლეების კავშირი ამ ცვლილების მასშტაბშია. ცენტრალური მართვა კონფიგურაციას სწრაფად ავრცელებს, ხოლო ექსპორტამდე გარდაქმნა განსაზღვრავს, რომელი მტკიცებულება მოხვდება საცავში. ორივე სასარგებლოა, მაგრამ შეცდომის გავლენასაც ზრდის. მიწოდებული კონფიგურაცია და სწორი სიგნალი ცალ-ცალკე შესამოწმებელი შედეგებია.

კრიტიკულ მეტრიკას მოკლე კონტრაქტი სჭირდება: მნიშვნელობა, ერთეული, წყარო, აუცილებელი ატრიბუტები და მომხმარებლები. მომხმარებელი შეიძლება იყოს ალერტი, კლიენტური ოპერაციის ანგარიში ან ინციდენტის საძიებო მოთხოვნა. ცვლილება ამ დამოკიდებულებებით უნდა შეფასდეს და არა მხოლოდ შემგროვებლის ჟურნალში შეცდომის არქონით.

თუ შეგროვებასა და ინციდენტებზე რეაგირებას სხვადასხვა გუნდი მართავს, სემანტიკის ცვლილების პასუხისმგებელიც უნდა განისაზღვროს. ტექნიკურად სწორი ინსტალაციაც შეიძლება ოპერაციულ შეთანხმებას არღვევდეს. განხილვას უნდა დაესწროს ადამიანი, რომელმაც იცის, რა უნდა დააფიქსიროს ალერტმა.

ფილტრი მომავალ გამოძიებას ცვლის

ექსპორტამდე ველის წაშლა მოცულობასა და მგრძნობიარე ინფორმაციის გადაცემას ამცირებს. თუმცა წაშლილი იდენტიფიკატორი ინციდენტის დროს სურვილით ვერ აღდგება. თუ ის HTTP მოთხოვნას ფონურ დავალებას უკავშირებდა, გამოძიება ორ ნაწილად გაიყოფა.

ეს ყველაფრის შენახვის არგუმენტი არ არის. ჯერ უნდა განვსაზღვროთ კითხვები, შემდეგ მათთვის აუცილებელი მინიმალური მონაცემები. საიდუმლოებები და მომხმარებლის სრული დოკუმენტები კავშირის აღსადგენად ხშირად საჭირო არ არის. ოპერაციის იდენტიფიკატორი, გამოშვების ვერსია და მიზეზის სტრუქტურული კოდი უფრო გამოსადეგი შეიძლება იყოს.

ნახშირბადის სიგნალი კონტრაქტის საჭიროებას აჩენს. ჯამური ენერგია და შესრულებული სამუშაოს ერთეულზე ინტენსივობა სხვადასხვა კითხვას პასუხობს. შემცირებული სამუშაოს გამო ენერგიის კლებას ეფექტიანობა არ ეწოდება. მონაცემებთან ერთად უნდა დარჩეს გამოთვლის მეთოდი, საზღვრები და ვარაუდები. წინააღმდეგ შემთხვევაში მაჩვენებელი სამუშაოს გაზომვის ფარგლებს გარეთ გადატანითაც გაუმჯობესდება.

პირობითი გამოშვება დოკუმენტების სერვისში

წარმოვიდგინოთ დოკუმენტების რიგით დამუშავების სერვისი. ეს საპროექტო მაგალითია. გუნდი process metrics-ს აახლებს და ჟურნალებს ასუფთავებს. გამოშვებამდე მოწმდება წარმატებული დოკუმენტი, დამმუშავებლის უარი და ტაიმაუტის შემდეგ გამეორება. თითოეულ გზაზე მოთხოვნის, დავალებისა და შედეგის კავშირი უნდა შენარჩუნდეს.

მცირე კვანძთა ჯგუფზე ძველი და ახალი შედეგები შედარდება იქ, სადაც მექანიზმი ამის საშუალებას იძლევა. მოწმდება პანელის მოთხოვნები და საცდელი ალერტი. დროებითი დუბლირების ხარჯი დროითა და მოცულობით იზღუდება. თუ სიგნალი საჭირო კითხვას ვეღარ პასუხობს, კონფიგურაცია უკან ბრუნდება და განსხვავების მტკიცებულება ინახება.

სემანტიკის, შენახვისა და კრიტიკული ალერტების შეცვლა ცალ-ცალკე შემოწმების გარეშე არ ღირს. გამქრალი შეცდომა შეიძლება გამოსწორებას, ფილტრს ან დაკარგულ ატრიბუტს ნიშნავდეს. ამ ვარიანტების გასარჩევი მონაცემების დაკარგვა ოპერირებას ასუსტებს, თუნდაც შენახვის ხარჯი შემცირდეს.

სერვერი როგორც სისტემის ბირთვი სიგნალებს შესრულებას უკავშირებს. Debian-ის Google Cloud-ის ქეისი ინფრასტრუქტურულ კონტექსტს იძლევა. მხარდაჭერის განხილვა შეიძლება ავარიის დროს აუცილებელი კითხვებით დავიწყოთ.