مراقبة الذهاب
يتيح لك أداة التجميع امكانية استخدام الكود الآلي ل ـ تقنيات تم دعمها، وعدم وجود أي مراقبة لخدمات الذهاب في صحة التوصيف ، والتتبع من بدايته الى نهايتها للطلبات عبر كل الأنظمة.
دعم 
أوقات تشغيل
المدعمة
- اذهب الى النسخة 1.9 أو أعلى
الأطر والمكتبات المدعمة
لتجنب اضافة ارتباطات غير ضرورية بالنسبة لنا الرئيسية github.com/instana/go-sensorوحدة برامج تتيح فقط الأجهزة لمجموعات البرامج التي تعد جزء من مكتبة Go standard llibrary. يتم اتاحة مجموعة أدوات الطرف الثالث كوحدات برامج منفصلة في github.com/instana/go-sensor/instrumentation/... ويجب اضافته الىgo.modبشكل منفصل.
ملاحظة : استمرارية التتبع لا يمكن تطبيقه على قاعدة البيانات ومكتبات التسجيل.
HTTP
RPC
| الاسم | مجموعة برامج الأجهزة | استمرارية التتبع |
|---|---|---|
google.golang.org/grpc |
github.com/instana/go-sensor/instrumentation/instagrpc |
✅ |
قواعد بيانات 
برنامج الرسائل
أخرى
مقاييس
Runtime Metrics
يتم تجميع وعرض المقاييس المترية في الاستعراض البياني لعملية الذهاب :
- استخدام الذاكرة
- استخدام التجميع
- نشاط GC
- الغوريلا
توقيعات الصحة
- استدعاءات
- وقت الاستجابة
- المقياس
تركيب 
تركيب أداة التجميع 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 يأخذ الأسبقية على متغيرات البيئة فيما عدا عن المحددات التالية :
INSTANA_SERVICE_NAMEيسمح باحلال اسم الخدمة المحدد في الكودINSTANA_PROCESS_NAMEيسمح باحلال الاسم الخاص بكيان البنية الأساسية الذي يمثل عملية الذهاب.INSTANA_DEBUGتتيح سجلات تصحيح الأخطاء حتى اذا كانت مواصفات كود التطبيق تقوم بتعريف مستوى تسجيل أعلىINSTANA_AUTO_PROFILEيسمح بعمل ملف مواصفات مستمر مع ملف المواصفات الآلي™INSTANA_LOG_LEVELيسمح بتحديد مستوى السجل. تعد القيم الممكنة هيdebug,error,warnوinfo.INSTANA_DEBUGالمتغير envirrament له الأسبقية اذا تم تحديدهINSTANA_KAFKA_HEADER_FORMATيسمح للمستخدمين بتحديد نسق نصوص رأس Kafka التي يتم نشرها بواسطة Ingass. تعد القيم الممكنة هيbinary(ميراث) ،string(نسق جديد) وboth
للحصول على مزيد من المعلومات المفصلة ، ارجع الى صفحة التوصيف.
ملف مواصفات 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 الخاصة بنا.