مراقبة الذهاب

يتيح لك أداة التجميع امكانية استخدام الكود الآلي ل ـ تقنيات تم دعمها، وعدم وجود أي مراقبة لخدمات الذهاب في صحة التوصيف ، والتتبع من بدايته الى نهايتها للطلبات عبر كل الأنظمة.

دعم

أوقات تشغيل المدعمة

الأطر والمكتبات المدعمة

لتجنب اضافة ارتباطات غير ضرورية بالنسبة لنا الرئيسية github.com/instana/go-sensorوحدة برامج تتيح فقط الأجهزة لمجموعات البرامج التي تعد جزء من مكتبة Go standard llibrary. يتم اتاحة مجموعة أدوات الطرف الثالث كوحدات برامج منفصلة في github.com/instana/go-sensor/instrumentation/... ويجب اضافته الىgo.modبشكل منفصل.

ملاحظة : استمرارية التتبع لا يمكن تطبيقه على قاعدة البيانات ومكتبات التسجيل.

HTTP

الاسم مجموعة برامج الأجهزة استمرارية التتبع
net/http github.com/instana/go-sensor، بدءا منv1.8.0
github.com/labstack/echo github.com/instana/go-sensor/instrumentation/instaecho
github.com/gin-gonic/gin github.com/instana/go-sensor/instrumentation/instagin
github.com/gorilla/mux github.com/instana/go-sensor/instrumentation/instamux
github.com/julienschmidt/httprouter github.com/instana/go-sensor/instrumentation/instahttprouter

RPC

الاسم مجموعة برامج الأجهزة استمرارية التتبع
google.golang.org/grpc github.com/instana/go-sensor/instrumentation/instagrpc

قواعد بيانات

الاسم مجموعة برامج الأجهزة
database/sql github.com/instana/go-sensor، بدءا منv1.15.0
go.mongodb.org/mongo-driver github.com/instana/go-sensor/instrumentation/instamongo
jackc/pgx github.com/instana/go-sensor/instrumentation/instapgx
go-redis github.com/instana/go-sensor/instrumentation/instaredis

برنامج الرسائل

الاسم مجموعة برامج الأجهزة استمرارية التتبع
cloud.google.com/go/pubsub github.com/instana/go-sensor/instrumentation/cloud.google.com/go/pubsub
github.com/Shopify/sarama github.com/instana/go-sensor/instrumentation/instasarama
github.com/streadway/amqp github.com/instana/go-sensor/instrumentation/instaamqp

أخرى

الاسم مجموعة برامج الأجهزة استمرارية التتبع
cloud.google.com/go/storage github.com/instana/go-sensor/instrumentation/cloud.google.com/go/storage
github.com/aws/aws-sdk-go github.com/instana/go-sensor/instrumentation/instaawssdk
github.com/aws/aws-lambda-go github.com/instana/go-sensor/instrumentation/instalambda
github.com/sirupsen/logrus github.com/instana/go-sensor/instrumentation/instalogrus

مقاييس Runtime Metrics

يتم تجميع وعرض المقاييس المترية في الاستعراض البياني لعملية الذهاب :

توقيعات الصحة

تركيب

تركيب أداة التجميع Intana oG هو عملية بسيطة من خطوتين. أولا ، إضافةgithub.com/instana/go-sensorوحدة البرنامج الخاصة بكgo.modملف:

go get github.com/instana/go-sensor

بمجرد اضافة وحدة برامج التجميع الى ارتباطات التطبيق الخاصة بك ، يمكن استخدامها في أداة كود التطبيق الخاص بك. برجاء الرجوع الى صفحة التركيب لمزيد من التفاصيل.

سجلات Tracers

يقوم oG Collector باستخدام وحدة التسجيل التي تم تحديد مستواها لتسجيل الأخطاء الداخلية والمعلومات التشخيصية. المفترضlogger.Loggerيستخدمlog.Loggerتم التوصيف باستخدامlog.Lstdflagsكنسخة نهائية وكتابة الرسائل الىos.Stderr. افتراضيا ، يقوم برنامج التسجيل هذا بطباعة فقطERRORرسائل المستوى ما لم يتم تشغيل متغير بيئة التشغيلINSTANA_DEBUGيتم تحديده.

لتغيير مستوى سجل الحد الأدنى في وقت التشغيل ، يفضل أن يتم توصيف وضخ نسخة منinstana.LeveledLogger:

l := logger.New(log.New(os.Stderr, "", os.Lstdflags))
instana.SetLogger(l)

// ...

l.SetLevel(logger.WarnLevel)

و#logger.LeveledLoggerيتم تنفيذ واجهة التعامل بواسطة مكتبات التسجيل الشائعة مثل github.com/sirupsen/logrus و go.uber.org/zap، لذلك يمكن استخدامهم كبديل.

وبدلا من ذلك ، منذ النسخة 1.39.0 من وحدة استشعار الذهاب ،INSTANA_LOG_LEVELيمكن استخدام متغير بيئة التشغيل لتحديد مستوى السجل.

ملحوظة: قيمةINSTANA_DEBUGمتغير بيئة التشغيل لا يؤثر على أدوات التسجيل المهيأة. يجب أن تقوم صراحة بالتحقق مما اذا كان قد تم تحديده واتاحة تسجيل تصحيح الأخطاء أثناء توصيف أداة التسجيل الخاصة بك :

import (
    instana "github.com/instana/go-sensor"
    "github.com/sirupsen/logrus"
)

func main() {
    // initialize Instana sensor
    instana.InitSensor(&instana.Options{Service: SERVICE})

    // initialize and configure the logger
    logger := logrus.New()
    logger.Level = logrus.InfoLevel

    // check if INSTANA_DEBUG is set and set the log level to DEBUG if needed
    if _, ok := os.LookupEnv("INSTANA_DEBUG"); ok {
        logger.Level = logrus.DebugLevel
    }

    // use logrus to log the Instana Go Collector messages
    instana.SetLogger(logger)

    // ...
}

Platforms

تقوم وحدة التجميع بدعم نمط serverless ، وذلك عندما تقوم بارسال وحدة قياس وتتبع الى نقطة نهاية وحدة قبول وحدة الخدمة بدلا من عميل النظام الرئيسي. لتحويل أداة التجميع الى نمط serverless ، قم بتحديدINSTANA_ENDPOINT_URLمتغير بيئة التشغيل الى URL acceple acceptor الخاص بتركيب agent الخاص بك واتاحة مفتاح agent الخاص بك بواسطةINSTANA_AGENT_KEY. برجاء الرجوع الى قسم مراقبة بدون تسلسل للتعرف على اختيارات التوصيف الأخرى المتاحة في نمط serverless.

AWS فارغيت

تقوم أداة التجميع Intana Go collector آليا باكتشاف ما اذا كانت الخدمة يتم تشغيلها على AWS Fargate عند تشغيلها في نمط serverless.

تشغيل Google مسعود

تكتشف وحدة تجميع Good Go آليا اذا كان يتم تشغيل الخدمة على Google Cloud Run عند التشغيل في نمط serverless.

AWS Lambda

تقوم أداة تجميع Go InGo بدعم عملية تتبع وظيفة AWS Lambda التي تم كتابتها من خلال البدء من v1.23.0. يجب أن يتم التعامل مع وحدات المعالجة باستخدام github.com/instana/go-sensor/instrumentation/instalambdaمجموعة برامج من أجل تجميع وارسال بيانات التتبع. برجاء الرجوع الى وثائق AWS Lambda اذهب للحصول على مزيد من التفاصيل.

Kubernetes & OpenShift

اذا تم تشغيل التطبيق الخاص بك وبرنامج Inttana Agent في نظام مجموعة Kubenetes ، برجاء التحقق من المطبوعات الفنية الموجودة في الوصول إلى شبكة (Kubernies) للحصول على معلومات عن التوصيف المطلوب في هذا الاعداد.

توصيف

تقوم وحدة التجميع اذهب بقبول التوصيف بنسق اثنين : في كود التطبيق بواسطة instana.Optionsعنصر توصيف أو من خلال متغيرات بيئة التشغيل. توصيف in-app يأخذ الأسبقية على متغيرات البيئة فيما عدا عن المحددات التالية :

للحصول على مزيد من المعلومات المفصلة ، ارجع الى صفحة التوصيف.

ملف مواصفات AutoProfile™

تعد ملفات المواصفات ضرورية لايجاد نقاط الأداء الساخنة واختناقات على مستوى الكود. وهي مفيدة في الحد من استهلاك الموارد وتحسين الأداء.

تقوم AutoProfile™ بتكوين وتقارير ملفات مواصفات العملية الى Incasانه. على خلاف prلتطوير-time و on-demand profilers ، حيث يجب أن يقوم المستخدم يدويا ببدء عمل ملف المواصفات ، AutoProfile™ آليا ويقوم بتنفيذ عملية تحديد المواصفات الملائمة لبيئات الانتاج الحرجة.

لاتاحة اضافة ملف مواصفات آلي™EnableAutoProfile: trueاختيار فيinstana.InitSensor(opt). للحصول على تعليمات مفصلة ، ارجع الى github.com/instana/go-وحدة استشعار. اذا كنت تحتاج الى اتاحة تحديد مواصفات لأحد التطبيقات التي تم تجهيزها بواسطة Instrumining بدون تغييرinstana.InitSensor()توصيف ، تحديدINSTANA_AUTO_PROFILE=trueمتغير env. لاحظ أن هذه القيمة لها الأسبقية وتقوم باحلال أي محاولة للغاء اتاحة عملية تحديد المواصفات من داخل كود التطبيق.

للحصول على مزيد من المعلومات ، ارجع الى وثائق ملف مواصفات آلي غير-آلي™ docs الخاصة بنا.

أنظر أيضا