การรวม OpenTracing และ OpenCensus: เส้นทางสู่การบรรจบกัน

การรวม OpenTracing และ OpenCensus: เส้นทางสู่การบรรจบกัน

ผู้เขียน: Ted Young, Pritam Shah และคณะกรรมการข้อกำหนดทางเทคนิค (Carlos Alberto, Bogdan Drutu, Sergei Kanzhelev และ Yuri Shkuro)

โครงการร่วมได้รับชื่อ: http://opentelemetry.io

สั้นมาก:

  • เรากำลังสร้างชุดไลบรารีและข้อกำหนดที่รวมเป็นหนึ่งใหม่สำหรับความสามารถในการตรวจสอบการวัดและส่งข้อมูลทางไกล โดยจะรวมโครงการ OpenTracing และ OpenCensus และจัดเตรียมเส้นทางที่รองรับสำหรับการย้ายข้อมูล
  • การใช้งานอ้างอิงใน Java จะพร้อมใช้งานในวันที่ 24 เมษายน และการทำงานในการใช้งานในภาษาอื่นจะเริ่มเต็มรูปแบบในวันที่ 8 พฤษภาคม 2019 ดูกำหนดการ ได้ที่นี่.
  • ภายในเดือนกันยายน 2019 จะมีการวางแผนความเท่าเทียมกับโปรเจ็กต์ที่มีอยู่สำหรับ C#, Golang, Java, NodeJS และ Python มีงานรออยู่มากมาย แต่เรารับมือได้หากทำงานคู่ขนาน หากคุณสนใจที่จะเข้าร่วมในโครงการนี้ โปรดลงทะเบียนและแจ้งให้เราทราบว่าคุณต้องการมีส่วนร่วมอย่างไร
  • เมื่อการใช้งานในแต่ละภาษาครบกำหนดแล้ว โครงการ OpenTracing และ OpenCensus ที่เกี่ยวข้องจะถูกปิด ซึ่งหมายความว่าโปรเจ็กต์เก่าจะถูกระงับ และโปรเจ็กต์ใหม่จะยังคงสนับสนุนเครื่องมือที่มีอยู่ต่อไปเป็นเวลาสองปีโดยใช้ความเข้ากันได้แบบย้อนหลัง

ภาพรวมโครงการ

การรวม OpenTracing และ OpenCensus: เส้นทางสู่การบรรจบกัน

เรากำลังทำการควบรวมกิจการ! เป้าหมายสูงสุดคือการนำโครงการ OpenTracing และ OpenCensus มารวมกันเป็นโครงการเดียวกัน
แกนหลักของโปรเจ็กต์ใหม่จะเป็นชุดของอินเทอร์เฟซที่สะอาดตาและรอบคอบ รวมถึงการประกอบไลบรารีแบบดั้งเดิมที่ใช้อินเทอร์เฟซเหล่านี้ในรูปแบบที่เรียกว่า SDK. ไอซิ่งบนเค้กจะเป็นมาตรฐานที่แนะนำสำหรับโปรโตคอลข้อมูลและสายข้อมูล รวมถึงส่วนทั่วไปของโครงสร้างพื้นฐาน
ผลลัพธ์ที่ได้คือระบบการวัดและส่งข้อมูลทางไกลที่สมบูรณ์ซึ่งเหมาะสำหรับการตรวจสอบไมโครเซอร์วิสและระบบกระจายสมัยใหม่ประเภทอื่นๆ ซึ่งเข้ากันได้กับ OSS ที่สำคัญที่สุดและซอฟต์แวร์แบ็กเอนด์เชิงพาณิชย์

เหตุการณ์สำคัญ

24.04/XNUMX — ผู้สมัครอ้างอิงที่ส่งเข้ารับการตรวจสอบ
8.05 — มีการจัดตั้งทีมและเริ่มทำงานในทุกภาษา
20.05 — เปิดตัวโครงการอย่างเป็นทางการที่ Kubecon Barcelona
6.09 - การใช้งานใน C#, Golang, Java, NodeJS และ Python มีความเท่าเทียมกับเวอร์ชันอื่นๆ
6.11 - โครงการ OpenTracing และ OpenCensus เสร็จสมบูรณ์อย่างเป็นทางการ
20.11 — งานเลี้ยงอำลาเพื่อเป็นเกียรติแก่ความสำเร็จของโครงการที่ Observability Summit, Kubecon San Diego

เส้นเวลาของการบรรจบกัน

การรวม OpenTracing และ OpenCensus: เส้นทางสู่การบรรจบกัน

การย้ายข้อมูลสำหรับแต่ละภาษาประกอบด้วยโครงสร้าง SDK ที่พร้อมใช้งานจริง เครื่องมือสำหรับไลบรารียอดนิยม เอกสารประกอบ CI เครื่องมือความเข้ากันได้แบบย้อนหลัง และการปิดโครงการ OpenCensus และ OpenTracing ที่เกี่ยวข้อง (“พระอาทิตย์ตก”) เราตั้งเป้าหมายอันทะเยอทะยานในเดือนกันยายน 2019 - บรรลุความเท่าเทียมกันสำหรับภาษา C#, Golang, Java, NodeJS และ Python เราจะย้ายวันที่พระอาทิตย์ตกจนกว่าทุกภาษาจะพร้อม แต่ควรหลีกเลี่ยงสิ่งนี้
เมื่อดูเป้าหมาย โปรดพิจารณาการมีส่วนร่วมส่วนตัวของคุณ และแจ้งให้เราทราบโดยการกรอก แบบฟอร์มลงทะเบียนหรือโดยการทักทายในแชท Gitter ของโปรเจ็กต์ OpenTracing и เปิดการสำรวจสำมะโนประชากร. คุณสามารถดูกราฟเป็นอินโฟกราฟิกได้ ที่นี่.

เป้าหมาย: ฉบับร่างแรกของข้อกำหนดข้ามภาษา (แล้วเสร็จภายในวันที่ 8 พฤษภาคม)

สิ่งสำคัญคือต้องทำงานร่วมกันแม้ว่าจะทำงานคู่ขนานในภาษาต่างๆ ก็ตาม ข้อกำหนดข้ามภาษาให้คำแนะนำสำหรับโครงการ ฟังดูธรรมดา แต่รับประกันการรองรับระบบที่สอดคล้องกันซึ่งให้ความรู้สึกคุ้นเคยโดยไม่คำนึงถึงภาษาการเขียนโปรแกรม

ข้อกำหนดบังคับสำหรับข้อกำหนดร่างแรกสำหรับภาษา X:

  • คำจำกัดความของคำศัพท์ทั่วไป
  • แบบจำลองสำหรับการอธิบายธุรกรรมแบบกระจาย สถิติ และตัวชี้วัด
  • ชี้แจงประเด็นสำคัญที่เกิดขึ้นระหว่างการดำเนินการ

เป้าหมายนี้ขัดขวางงานที่เหลือ ร่างแรกจะต้องแล้วเสร็จภายในวันที่ 8 พฤษภาคม

เป้าหมาย: ร่างแรกสำหรับข้อกำหนดข้อมูล (แล้วเสร็จภายในวันที่ 6 กรกฎาคม)

ข้อกำหนดข้อมูลกำหนดรูปแบบข้อมูลทั่วไปสำหรับการติดตามและหน่วยเมตริก เพื่อให้ข้อมูลที่ส่งออกโดยกระบวนการทั้งหมดสามารถประมวลผลโดยใช้โครงสร้างพื้นฐานการวัดและส่งข้อมูลทางไกลเดียวกัน โดยไม่คำนึงถึงกระบวนการสร้างข้อมูล ซึ่งรวมถึงสคีมาข้อมูลสำหรับแบบจำลองการติดตามที่อธิบายไว้ในข้อกำหนดข้ามภาษา นอกจากนี้ ยังมีคำจำกัดความของข้อมูลเมตาสำหรับการดำเนินการทั่วไปที่การติดตามใช้ในการบันทึก เช่น คำขอ HTTP ข้อผิดพลาด และการสืบค้นฐานข้อมูล เหล่านี้ แบบแผนความหมาย เป็นตัวอย่าง

ร่างแรกจะขึ้นอยู่กับรูปแบบข้อมูล OpenCensus ปัจจุบัน และจะประกอบด้วยสิ่งต่อไปนี้:

  • สคีมาข้อมูลที่ใช้ข้อกำหนดข้ามภาษา
  • คำจำกัดความของข้อมูลเมตาสำหรับการดำเนินการทั่วไป
  • คำจำกัดความของ JSON และ Protobuf
  • การดำเนินการของลูกค้าอ้างอิง

โปรดทราบว่ายังมีโปรโตคอลแบบใช้สายที่กระจายการติดตามในแบนด์ ซึ่งเราต้องการสร้างมาตรฐานเช่นกัน รูปแบบการจัดจำหน่าย ติดตามบริบท พัฒนาผ่าน W3C

เป้าหมาย: ความเท่าเทียมกันในทุกภาษาหลักที่รองรับ (เสร็จสิ้นภายในวันที่ 6 กันยายน)

เราต้องบรรลุความเท่าเทียมกันสำหรับระบบนิเวศของภาษาปัจจุบันโดยการแทนที่โครงการเก่าด้วยโครงการใหม่

  • คำจำกัดความอินเทอร์เฟซสำหรับการติดตาม เมตริก และการแพร่กระจายบริบทตามข้อกำหนดข้ามภาษา
  • SDK ที่พร้อมใช้งานซึ่งใช้อินเทอร์เฟซเหล่านี้และส่งออก Trace-Data หากเป็นไปได้ SDK จะถูกสร้างขึ้นโดยการย้ายการใช้งานที่มีอยู่จาก OpenCensus
  • ชุดเครื่องมือสำหรับไลบรารียอดนิยมที่ปัจจุบันครอบคลุมอยู่ใน OpenTracing และ OpenCensus

นอกจากนี้เรายังให้ความสำคัญกับความเข้ากันได้แบบย้อนหลังและต้องการให้แน่ใจว่าการเปลี่ยนแปลงจากโครงการที่มีอยู่จะราบรื่น

  • SDK ใหม่จะเข้ากันได้กับอินเทอร์เฟซ OpenTracing ในปัจจุบัน พวกเขาจะอนุญาตให้เครื่องมือ OpenTracing รุ่นเก่าทำงานควบคู่ไปกับเครื่องมือใหม่ในกระบวนการเดียวกัน ทำให้ผู้ใช้สามารถย้ายงานของพวกเขาเมื่อเวลาผ่านไป
  • เมื่อ SDK ใหม่พร้อม แผนการอัปเกรดจะถูกสร้างขึ้นสำหรับผู้ใช้ OpenCensus ปัจจุบัน เช่นเดียวกับ OpenTracing เครื่องมือรุ่นเก่าจะสามารถทำงานร่วมกับเครื่องมือใหม่ๆ ต่อไปได้
  • ภายในเดือนพฤศจิกายน ทั้ง OpenTracing และ OpenCensus จะปิดไม่รับการเปลี่ยนแปลง ความเข้ากันได้แบบย้อนหลังกับเครื่องมือรุ่นเก่าจะได้รับการสนับสนุนเป็นเวลาสองปี

การสร้าง SDK ที่ดีที่สุดสำหรับทุกภาษานั้นต้องใช้ความพยายามอย่างมาก และนั่นคือสิ่งที่เราต้องการมากที่สุด

เป้าหมาย: เอกสารพื้นฐาน (แล้วเสร็จภายในวันที่ 6 กันยายน)

ปัจจัยสำคัญต่อความสำเร็จของโครงการโอเพ่นซอร์สคือการจัดทำเอกสาร เราต้องการเอกสารและเครื่องมือการฝึกอบรมชั้นยอด และนักเขียนด้านเทคนิคของเราคือนักพัฒนาที่กระตือรือร้นที่สุดในโปรเจ็กต์นี้ การสอนนักพัฒนาให้ตรวจสอบซอฟต์แวร์อย่างเหมาะสมถือเป็นหนึ่งในผลกระทบที่สำคัญที่สุดที่เราอยากให้มีต่อโลก

เอกสารต่อไปนี้เป็นเอกสารขั้นต่ำที่จำเป็นในการเริ่มต้น:

  • การวางแนวโครงการ
  • ความสามารถในการสังเกต 101.
  • จุดเริ่มต้นของการทำงาน
  • คู่มือภาษา (แยกกันสำหรับแต่ละรายการ)

ยินดีต้อนรับนักเขียนทุกระดับ! เว็บไซต์ใหม่ของเราใช้ Hugo โดยใช้มาร์กอัปปกติ ดังนั้นจึงค่อนข้างง่ายที่จะมีส่วนร่วม

เป้าหมาย: Registry v1.0 (เสร็จสิ้นภายในวันที่ 6 กรกฎาคม)

Registry - องค์ประกอบสำคัญอีกประการหนึ่งซึ่งเป็นเวอร์ชันปรับปรุง รีจิสทรี OpenTracing.

  • ค้นหาไลบรารี ปลั๊กอิน โปรแกรมติดตั้ง และส่วนประกอบอื่นๆ ได้อย่างง่ายดาย
  • การจัดการส่วนประกอบ Registry ได้ง่าย
  • คุณสามารถดูฟีเจอร์ SDK ที่มีอยู่ในแต่ละภาษาได้

หากคุณสนใจในการออกแบบ อินเทอร์เฟซ และ UX เรามีโครงการที่ยอดเยี่ยมสำหรับการมีส่วนร่วมส่วนบุคคล

เป้าหมาย: โครงสร้างพื้นฐานสำหรับการทดสอบและเผยแพร่ซอฟต์แวร์ (แล้วเสร็จภายในวันที่ 6 กันยายน)

เพื่อให้แน่ใจว่าเราจะส่งมอบโค้ดที่ปลอดภัยที่คุณวางใจได้ต่อไป เรามีความมุ่งมั่นในการออกแบบเพื่อสร้างขั้นตอนการทดสอบและเผยแพร่ซอฟต์แวร์ที่มีคุณภาพ โปรดแจ้งให้เราทราบหากคุณสามารถดูแลไปป์ไลน์สำหรับการทดสอบ การกำหนดคุณลักษณะ และการเผยแพร่ซอฟต์แวร์ เราระบุระดับความพร้อมในการผลิตอย่างชัดเจน และความพร้อมของโครงสร้างพื้นฐานการทดสอบจะเป็นปัจจัยในการตัดสินใจหลักสำหรับเรา

เป้าหมาย: ปิดโครงการ OpenTracing และ OpenCensus (แล้วเสร็จภายในวันที่ 6 พฤศจิกายน)

เราวางแผนที่จะเริ่มปิดโครงการเก่าในวันที่ 6 กันยายน หากโครงการใหม่มีความเท่าเทียมกัน 2 เดือนต่อมา ด้วยความเท่าเทียมกันของทุกภาษา เราวางแผนที่จะปิดโครงการ OpenTracing และ OpenCensus ควรเข้าใจดังนี้:

  • ที่เก็บจะถูกแช่แข็งและจะไม่มีการเปลี่ยนแปลงเพิ่มเติม
  • ชุดเครื่องมือปัจจุบันมีการวางแผนระยะเวลาการสนับสนุนสองปี
  • ผู้ใช้จะสามารถอัปเกรดเป็น SDK ใหม่ได้โดยใช้เครื่องมือเดียวกัน
  • จะมีการอัพเดตแบบค่อยเป็นค่อยไป

เข้าร่วมกับเรา

เรายินดีรับความช่วยเหลือเนื่องจากนี่เป็นโครงการขนาดใหญ่ หากคุณสนใจที่จะเรียนรู้เกี่ยวกับความสามารถในการสังเกต ตอนนี้ก็ถึงเวลาแล้ว!

ที่มา: will.com

เพิ่มความคิดเห็น