โลโก้ Sentry
Monitoring และ ObservabilityBSL (ตรวจเงื่อนไขก่อนใช้เชิงพาณิชย์)

Sentry คืออะไร และวิธีติดตั้งบน Cloud Server

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

หมวดหมู่
Monitoring และ Observability
ติดตั้งบนเซิร์ฟเวอร์เองได้
ได้
สเปกเริ่มต้นที่แนะนำ
4 vCPU · RAM 8 GB
ไลเซนส์
BSL (ตรวจเงื่อนไขก่อนใช้เชิงพาณิชย์)
เว็บทางการ
เปิดเว็บไซต์
สร้าง Cloud Server เดี๋ยวนี้
  • ISO/IEC 27001
  • ISO 22301
  • ISO 20000-1
  • CSA-STAR

Data Center ในไทย มาตรฐาน TIA-942 Tier 3+ ข้อมูลอยู่ในประเทศไทย

Sentry คืออะไร

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

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

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

แผนผังการวางระบบ Sentry บน Cloud Server หนึ่งเครื่องที่ Data Center ในประเทศไทย ผู้ใช้เข้าถึงผ่านไฟร์วอลล์ที่เปิดเฉพาะพอร์ต 443, 9000 ตัว Sentry และข้อมูลอยู่บนเครื่องเดียวกัน เริ่มต้นที่ 4 vCPU แรม 8 GB และมีสำเนาสำรองเขียนออกไปเก็บอีกไซต์หนึ่ง
Sentry ทำงานบน Cloud Server เครื่องเดียวได้ครบ เปิดเฉพาะพอร์ตที่จำเป็น ข้อมูลและสำเนาสำรองอยู่ใน Data Center ในประเทศไทย

ความสามารถเด่นของ Sentry

บอกจุดที่เกิดข้อผิดพลาดในโค้ด

เห็นลำดับการเรียกฟังก์ชันและบรรทัดที่เกิดปัญหา

จัดกลุ่มและนับผลกระทบ

รู้ว่าปัญหาใดกระทบผู้ใช้มากที่สุดเพื่อจัดลำดับการแก้

ผูกกับเวอร์ชันที่ปล่อย

เห็นว่าข้อผิดพลาดเริ่มเกิดหลังปล่อยเวอร์ชันใด

รองรับหลายภาษาและเฟรมเวิร์ก

ใช้ได้ทั้งฝั่งเว็บ ฝั่งเซิร์ฟเวอร์ และแอปมือถือ

วัดประสิทธิภาพของคำขอ

เห็นว่าเส้นทางใดช้าและช้าที่ขั้นตอนไหน

ใช้ Sentry ทำอะไรได้บ้าง

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

สเปก Cloud Server ที่แนะนำ

แผนภาพเทียบสเปก Cloud Server สำหรับ Sentry 3 ระดับ เริ่มจาก 4 vCPU แรม 8 GB ดิสก์ NVMe 100 GB ไปจนถึง 16 vCPU ขึ้นไป แรม 32 GB ขึ้นไป ดิสก์ NVMe 500 GB ขึ้นไป โดยเทียบขนาดแยกตามแต่ละคอลัมน์
เริ่มจากระดับที่ตรงกับการใช้งานตอนนี้ แล้วเพิ่ม CPU และ RAM ทีหลังได้บนเครื่องเดิม
ระดับการใช้งานvCPURAMDisk
ขั้นต่ำตามข้อกำหนดขั้นต่ำของการติดตั้งเอง4 vCPU8 GBNVMe 100 GB
แนะนำหลายโครงการที่มีผู้ใช้จริง8 vCPU16 GBNVMe 200 GB
ใช้งานหนักปริมาณเหตุการณ์สูงและเก็บย้อนหลังยาว16 vCPU ขึ้นไป32 GB ขึ้นไปNVMe 500 GB ขึ้นไป

ดูราคาตามสเปกได้ที่ ราคา Cloud Compute หรือให้ทีมงานช่วยประเมินสเปกจากปริมาณผู้ใช้จริงของคุณ

วิธีติดตั้ง Sentry บน Cloud Server ของ THAI DATA CLOUD

ขั้นตอนด้านล่างใช้กับ Cloud Server ที่เพิ่งสร้างใหม่จากหน้าจัดการของ THAI DATA CLOUD ได้ทันที ถ้าไม่สะดวกทำเอง ทีมวิศวกรของเราติดตั้งและตั้งค่าให้ฟรีสำหรับลูกค้า Cloud Server

สิ่งที่ต้องเตรียม

  • Docker และ Docker Compose
  • RAM อย่างน้อย 8 GB เพราะระบบมีหลายองค์ประกอบ
  • โดเมนและใบรับรอง SSL
  • พื้นที่ดิสก์สำหรับเก็บเหตุการณ์ย้อนหลัง

ทดสอบบน Ubuntu Server 24.04 LTS ที่ติดตั้ง Docker แล้ว

  1. 1

    ดาวน์โหลดชุดติดตั้ง

    git clone https://github.com/getsentry/self-hosted.git
    cd self-hosted
  2. 2

    รันสคริปต์ติดตั้ง

    สคริปต์จะตรวจความพร้อมของเครื่อง เตรียมฐานข้อมูล และให้สร้างบัญชีผู้ดูแลระบบ ขั้นตอนนี้ใช้เวลาพอสมควร

    ./install.sh
  3. 3

    เริ่มระบบ

    docker compose up -d
    docker compose ps
  4. 4

    ตั้ง Nginx และ HTTPS

    sudo certbot --nginx -d sentry.example.com
  5. 5

    สร้างโครงการและเชื่อมกับแอป

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

    // ตัวอย่างฝั่ง JavaScript
    import * as Sentry from "@sentry/browser"
    Sentry.init({
      dsn: "https://[email protected]/1",
      release: "[email protected]",
      tracesSampleRate: 0.1,
    })
  6. 6

    ตั้งการแจ้งเตือนและนโยบายเก็บข้อมูล

    ตั้งให้แจ้งทีมเมื่อพบข้อผิดพลาดใหม่หรือเมื่อจำนวนเพิ่มผิดปกติ และกำหนดระยะเวลาเก็บเหตุการณ์เพื่อคุมพื้นที่ดิสก์

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

พอร์ตที่ต้องเปิดบน Firewall

พอร์ตโปรโตคอลใช้ทำอะไร
443TCPหน้าจอและปลายทางรับข้อมูลจากแอป
9000TCPพอร์ตภายในของระบบ

สิ่งที่ควรทำต่อหลังติดตั้งเสร็จ

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

ทำไมควรรัน Sentry บน Cloud Server ของ THAI DATA CLOUD

Data Center ในประเทศไทย มาตรฐาน ISO/IEC 27001 และ ISO 22301 พร้อมทีมวิศวกรคนไทยดูแลตลอด 24 ชั่วโมง

ข้อมูลข้อผิดพลาดซึ่งอาจมีร่องรอยของข้อมูลผู้ใช้อยู่ในเซิร์ฟเวอร์ในไทยที่องค์กรควบคุมเอง

ไม่มีค่าใช้จ่ายตามจำนวนเหตุการณ์ ต่างจากบริการที่คิดตามปริมาณ

ขยายสเปกได้เมื่อปริมาณเหตุการณ์เพิ่มขึ้นตามการเติบโตของระบบ

คำถามที่พบบ่อยเกี่ยวกับ Sentry

Sentry ต่างจากระบบรวม Log อย่างไร

ระบบรวม Log เก็บทุกอย่างที่แอปเขียนออกมา ส่วน Sentry โฟกัสที่ข้อผิดพลาดโดยเฉพาะ พร้อมบริบทที่ช่วยแก้บั๊กได้ทันที ทั้งลำดับการเรียกฟังก์ชันและผลกระทบต่อผู้ใช้ ทีมส่วนใหญ่ใช้ทั้งสองอย่างคู่กัน

ติดตั้งเองคุ้มไหมเมื่อเทียบกับใช้บริการ

คุ้มเมื่อองค์กรมีข้อกำหนดว่าข้อมูลต้องอยู่ในประเทศ หรือเมื่อปริมาณเหตุการณ์สูงจนค่าบริการตามปริมาณแพงกว่าค่าเซิร์ฟเวอร์ แต่ต้องยอมรับว่าระบบมีหลายองค์ประกอบและต้องมีคนดูแล

ใช้ทรัพยากรเท่าไหร่

มากกว่าที่หลายทีมคาด เพราะมีทั้งฐานข้อมูล คิวงาน และตัวประมวลผลหลายตัว ควรเริ่มที่ 8 GB RAM เป็นอย่างน้อยและเผื่อดิสก์ตามปริมาณเหตุการณ์ที่จะเก็บ

บริการของ THAI DATA CLOUD ที่เกี่ยวข้อง

ให้เราติดตั้ง Sentry ให้ฟรี บน Cloud Server ในไทย

แจ้งความต้องการสั้น ๆ ทีมวิศวกรจะช่วยประเมินสเปก ติดตั้ง และตั้งค่าความปลอดภัยให้พร้อมใช้งาน ปรึกษาฟรี ไม่มีข้อผูกมัด