สอบถามหลักสูตรเลือกช่องทางที่สะดวก ทีมงานตอบเองทุกช่อง
LINE @itgeniusตอบเร็วที่สุด · จ–ศ 9:00–17:00 น.
โทรศัพท์
02-570-8449สำนักงาน088-807-9770มือถือ
อีเมลและโซเชียล
contact@itgenius.co.thสำหรับใบเสนอราคาและเอกสารFacebookitgeniusonlineYouTubeitgeniusengขอคำปรึกษาจัดอบรมให้ทีม
พัฒนาเว็บไซต์ · WDC-97

Elasticsearch and Kibana with .NET

หลักสูตร Elasticsearch and Kibana with .NET เป็นการอบรมใช้ Elasticsearch ทำระบบค้นหาและเก็บ Log ของแอป .NET ตั้งแต่ออกแบบ Mapping เขียน Query DSL และ ES|QL เชื่อม ASP.NET Core ด้วย Client ทางการ ส่ง Log ด้วย Serilog จนถึงสร้าง Dashboard ใน Kibana เหมาะกับนักพัฒนา .NET ผู้ดูแลระบบ ทีม DevOps และ DBA

อัปเดตล่าสุด
ราคาเริ่มต้น 11,250 บาท / ท่าน 12,500 −10% ยังไม่รวม VAT 7% · มีราคาหมู่คณะ
PDFดาวน์โหลด Course Outline
  • ระยะเวลา18 ชั่วโมง · 3 วัน
  • รูปแบบออนไซต์ / ออนไลน์สด
  • รอบถัดไปเปิดตามคำขอ
  • ใบรับรองมี Certificate

ภาพรวมหลักสูตร

Elasticsearch เป็นเครื่องมือค้นหาและวิเคราะห์ข้อมูลแบบกระจายที่นิยมใช้ทั้งทำระบบค้นหาในแอป และเก็บ Log ของระบบไว้สืบค้นย้อนหลัง ส่วน Kibana คือหน้าจอสำหรับสำรวจข้อมูล สร้างกราฟ และ Dashboard แต่ทีม .NET จำนวนมากยังใช้ไลบรารี NEST หรือ Sink รุ่นเก่าที่ถูกเลิกพัฒนาไปแล้ว ตั้งค่า Index แบบลองผิดลองถูก และเก็บ Log ไว้จนดิสก์เต็มโดยไม่มีการจัดการอายุข้อมูล

หลักสูตรนี้พาผู้เรียนใช้ Elastic Stack 9 ร่วมกับ .NET 10 แบบปัจจุบัน เริ่มจากติดตั้ง Elasticsearch และ Kibana ด้วย Docker ที่เปิดระบบความปลอดภัยไว้ เข้าใจ Index, Mapping และ Analyzer เขียน Query DSL, Aggregation และ ES|QL จากนั้นเชื่อม ASP.NET Core ด้วย Client ทางการ Elastic.Clients.Elasticsearch สร้าง Web API สำหรับค้นหาข้อมูล Sync ข้อมูลจากฐานข้อมูลหลัก และทดลอง Semantic Search วันสุดท้ายส่ง Log จากแอปด้วย Serilog เข้า Data Stream จัดการอายุข้อมูลด้วย ILM แล้ววิเคราะห์ Log ใน Kibana ผ่าน Discover, Dashboard และ Alert ปิดท้ายด้วย Workshop ระบบค้นหาและติดตาม Log ของแอป .NET (อบรม 3 วัน วันละ 6 ชั่วโมง รวม 18 ชั่วโมง ระดับ Intermediate)

สิ่งที่คุณจะได้รับ

  • เข้าใจสถาปัตยกรรมของ Elasticsearch และ Kibana ทั้ง Cluster, Node, Index และ Shard
  • ติดตั้ง Elastic Stack 9 ด้วย Docker พร้อมระบบความปลอดภัยที่เปิดไว้เป็นค่าเริ่มต้น
  • ออกแบบ Mapping และ Analyzer ให้เหมาะกับข้อมูล รวมถึงข้อความภาษาไทย
  • ค้นหาและสรุปข้อมูลด้วย Query DSL, Aggregation และ ES|QL
  • เชื่อมแอป .NET 10 กับ Elasticsearch ด้วย Elastic.Clients.Elasticsearch
  • สร้าง Web API สำหรับค้นหาข้อมูลและ Sync ข้อมูลจากฐานข้อมูลหลัก
  • ส่ง Log จาก ASP.NET Core ด้วย Serilog เข้า Data Stream และจัดการอายุข้อมูลด้วย ILM
  • วิเคราะห์ Log และสร้าง Dashboard กับ Alert ใน Kibana ได้

หลักสูตรนี้เหมาะสำหรับ

  • นักพัฒนา .NET ที่ต้องการเพิ่มระบบค้นหาหรือระบบเก็บ Log ให้แอป
  • ผู้ดูแลระบบและทีม DevOps ที่ต้องติดตาม Log ของแอปพลิเคชัน
  • Database Administrator (DBA) ที่ต้องดูแลข้อมูลค้นหาควบคู่กับฐานข้อมูลหลัก
  • ทีมที่ยังใช้ NEST หรือ Serilog Sink รุ่นเก่าและต้องการย้ายไปใช้แนวทางปัจจุบัน
  • ผู้ที่ต้องการต่อยอดจากการพัฒนา ASP.NET Core ไปสู่งานค้นหาและวิเคราะห์ข้อมูล

พื้นฐานของผู้เข้าอบรม

  • เขียนภาษา C# ได้ และเคยสร้างแอปหรือ Web API ด้วย ASP.NET Core มาบ้าง
  • เข้าใจรูปแบบข้อมูล JSON และการเรียก HTTP API
  • ใช้ Command Line และ Docker ขั้นพื้นฐานได้
  • โน้ตบุ๊ก RAM อย่างน้อย 16 GB ที่ติดตั้ง .NET 10 SDK, Docker Desktop และ VS Code หรือ Visual Studio 2026 ได้

หัวข้อการฝึกอบรม

รายละเอียดหลักสูตร

หลักสูตรนี้เป็นฉบับปรับปรุงใหม่ปี 2026 ที่มาแทนหลักสูตร Elasticsearch and Kibana with .NET รุ่นเดิม เนื้อหาเขียนใหม่ทั้งหมดสำหรับ Elastic Stack 9 และ .NET 10 อบรม 3 วัน วันละ 6 ชั่วโมง รวม 18 ชั่วโมง (09:00-16:00 น.) รูปแบบบรรยายพร้อม Lab บนแอปแคตตาล็อกสินค้าตัวอย่างชุดเดียวตลอดหลักสูตร ระดับ Intermediate ใช้ Client ทางการ Elastic.Clients.Elasticsearch แทน NEST ใช้ Elastic.Serilog.Sinks แทน

Serilog.Sinks.Elasticsearch เก็บ Log เป็น Data Stream พร้อม ILM และเพิ่ม ES|QL กับ Semantic Search ทุก Lab รันบนเครื่องของผู้เรียนด้วย Docker และ License แบบ Basic ที่ใช้ฟรี ยกเว้นหัวข้อ Semantic Search และ Alert บางแบบที่ต้องใช้ Trial License หรือ Elastic Cloud แบบทดลองใช้ของผู้เรียนเอง ผู้เรียนได้ Lab Guide ซอร์สโค้ดครบทุก Lab และไฟล์ docker-compose กลับไปใช้งานต่อ

Day 1 พื้นฐาน Elasticsearch และการค้นหา

Section 1: Lab: รู้จัก Elastic Stack 9 และติดตั้งด้วย Docker

  • Use Case ของ Elasticsearch: ค้นหาในแอป, Log Analytics และ Observability
  • สถาปัตยกรรม Cluster, Node, Index, Shard, Replica และ Inverted Index
  • ติดตั้ง Elasticsearch และ Kibana 9 ด้วย Docker Compose พร้อม Security และ TLS
  • ผู้ใช้ elastic, kibana_system และการสร้าง API Key สำหรับแอป
  • Lab: เปิด Kibana และทดลองคำสั่งแรกใน Dev Tools Console

Section 2: Document, Index และ REST API

  • สร้าง อ่าน แก้ไข และลบ Document ผ่าน REST API
  • Bulk API สำหรับนำเข้าข้อมูลจำนวนมาก
  • Refresh, Near Real-time Search และผลต่อการเขียนข้อมูล
  • ป้องกันการเขียนทับกันด้วย Optimistic Concurrency
  • Lab: นำเข้าข้อมูลสินค้าตัวอย่างหลายพันรายการด้วย Bulk API

Section 3: Mapping และ Text Analysis

  • Dynamic Mapping เทียบกับ Explicit Mapping และผลเสียของการปล่อยให้เดาเอง
  • ชนิดข้อมูล text, keyword, date, numeric และ Multi-field
  • Analyzer, Tokenizer และ Filter รวมถึง Analyzer สำหรับภาษาไทย
  • Index Template และ Component Template
  • Lab: ออกแบบ Mapping ของสินค้าแล้ว Reindex จากของเดิม

Section 4: Lab: ค้นหาด้วย Query DSL

  • match, multi_match, term และ range Query
  • bool Query: must, should, filter และ must_not
  • Relevance Score ด้วย BM25 และการปรับน้ำหนักฟิลด์ด้วย Boost
  • Highlight, Sort และการแบ่งหน้าด้วย search_after
  • Lab: ค้นหาสินค้าตามคำค้นพร้อมกรองราคาและหมวดหมู่

Section 5: Aggregation และ ES|QL

  • Bucket Aggregation: terms, range และ date_histogram
  • Metric Aggregation: avg, sum, cardinality และ percentiles
  • ES|QL ภาษา Query แบบ Pipe: FROM, WHERE, STATS และ SORT
  • เลือกใช้ Query DSL หรือ ES|QL ให้เหมาะกับงาน
  • Lab: สรุปยอดขายรายเดือนและสินค้าขายดีด้วย ES|QL
Day 2 เชื่อม Elasticsearch กับแอป .NET

Section 6: Lab: เริ่มต้น Elastic.Clients.Elasticsearch

  • ติดตั้ง Client ทางการรุ่น 9 และความเข้ากันได้กับรุ่นของ Elasticsearch
  • ตั้งค่า ElasticsearchClientSettings, API Key และ Certificate
  • ลงทะเบียน Client แบบ Singleton ผ่าน Dependency Injection
  • สิ่งที่เปลี่ยนไปเมื่อย้ายจาก NEST และ Client รุ่น 8
  • Lab: Index และอ่าน Document จากคลาส C# (POCO)

Section 7: Lab: Web API สำหรับจัดการข้อมูล

  • สร้าง ASP.NET Core Web API บน .NET 10 พร้อมเอกสาร OpenAPI
  • Endpoint สำหรับ Index, Get, Update และ Delete
  • Bulk Indexing จากข้อมูลในฐานข้อมูลหลัก
  • ตรวจสอบ Response และจัดการ Error จาก Elasticsearch
  • Lab: API จัดการแคตตาล็อกสินค้าบน Elasticsearch

Section 8: ค้นหาข้อมูลจากแอป .NET

  • เขียน Search ด้วย Fluent API และ Object Initializer
  • รวม Full-text Query เข้ากับ Filter ที่มาจากหน้าจอ
  • Facet จาก Aggregation และการแบ่งหน้าผลลัพธ์
  • Autocomplete ด้วย search_as_you_type
  • Lab: API ค้นหาสินค้าพร้อม Facet และคำแนะนำขณะพิมพ์

Section 9: Sync ข้อมูลและ Reindex

  • รูปแบบการ Sync: เขียนพร้อมกัน, Outbox และ Background Job
  • BackgroundService ใน .NET สำหรับส่งข้อมูลที่เปลี่ยนแปลง
  • Index Alias สำหรับเปลี่ยน Mapping โดยระบบไม่หยุด
  • Reindex API และการตรวจความครบถ้วนของข้อมูล
  • Lab: เปลี่ยน Mapping ผ่าน Alias ขณะ API ยังให้บริการ

Section 10: Semantic Search และ Hybrid Search

  • Keyword Search ต่างจาก Semantic Search อย่างไร
  • ฟิลด์ semantic_text และ Inference Endpoint
  • Hybrid Search รวมผลจาก BM25 และ Semantic ด้วย RRF
  • ค้นหาด้วยฟังก์ชัน MATCH ใน ES|QL
  • Lab: ค้นหาสินค้าด้วยความหมายของคำค้น (ใช้ Trial License)
Day 3 Logging และวิเคราะห์ข้อมูลด้วย Kibana

Section 11: Lab: ส่ง Log จาก ASP.NET Core ด้วย Serilog

  • Structured Logging ด้วย ILogger และ Serilog.AspNetCore
  • Elastic.Serilog.Sinks แทน Sink รุ่นเก่า และรูปแบบ ECS
  • ตั้งค่าใน Program.cs และ appsettings.json อย่างปลอดภัย
  • เพิ่มข้อมูลประกอบ Log เช่น Request Id และผู้ใช้ ด้วย Enricher
  • Lab: ส่ง Log และ Request Log ของ Web API เข้า Elasticsearch

Section 12: Data Stream, ILM และการดูแล Index

  • Data Stream สำหรับข้อมูลแบบ Time Series แทน Index รายวัน
  • Index Lifecycle Management: Rollover และการลบข้อมูลเก่า
  • Index Management ใน Kibana และการดูสุขภาพของ Cluster
  • Snapshot และ Restore เบื้องต้น
  • Lab: กำหนดให้เก็บ Log 30 วันแล้วลบอัตโนมัติ

Section 13: Lab: สืบค้น Log ด้วย Kibana Discover

  • สร้าง Data View และเลือกช่วงเวลา
  • ค้นหาด้วย KQL และ Filter
  • ใช้ ES|QL ใน Discover เพื่อสรุปและหาสาเหตุของปัญหา
  • บันทึก Search และแชร์ให้ทีม
  • Lab: ไล่หาสาเหตุของ Error 500 จาก Log ของ Web API

Section 14: Dashboard, Alert และ OpenTelemetry

  • สร้างกราฟด้วย Lens: Histogram, กราฟเส้น, Heat Map และ Pie
  • รวมกราฟเป็น Dashboard ติดตามแอป
  • Alerting Rule เบื้องต้นเมื่อ Error เพิ่มขึ้นผิดปกติ
  • ภาพรวม OpenTelemetry และ EDOT .NET สำหรับ Trace และ Metric
  • Lab: Dashboard ติดตามสุขภาพของ Web API

Section 15: Workshop: ระบบค้นหาและติดตาม Log ของแอป .NET

  • โจทย์: ระบบค้นหาข้อมูลขององค์กรพร้อมเก็บ Log ครบวงจร
  • ออกแบบ Mapping, API ค้นหา และการ Sync ข้อมูล
  • เชื่อม Log เข้า Data Stream และสร้าง Dashboard ของทีม
  • นำเสนอผลงาน และสรุป Checklist ก่อนใช้งานจริง

รอบอบรมและรูปแบบการอบรม

สำหรับบุคคล — รอบอบรมทั่วไป

ขณะนี้ยังไม่มีรอบอบรมเปิดรับสมัคร ลงชื่อจองไว้ได้เลย ทีมงานจะติดต่อกลับเป็นกลุ่มแรกเมื่อเปิดรอบถัดไป หรือสอบถามทางไลน์ หรือโทร 02-570-8449 หรือ 088-807-9770

สำหรับองค์กร — In-house / Private Training

  • ปรับเนื้อหาให้ตรงกับเครื่องมือและงานจริงของทีม
  • เลือกวันเอง อบรมที่บริษัทหรือออนไลน์สด
  • ออกใบเสนอราคาในนามนิติบุคคลให้ฝ่ายจัดซื้อ
ขอใบเสนอราคาอบรมองค์กร

วิทยากรผู้สอน

คำถามที่พบบ่อย

Elasticsearch คืออะไร ต่างจากฐานข้อมูลทั่วไปอย่างไร

Elasticsearch เป็นเครื่องมือค้นหาและวิเคราะห์ข้อมูลแบบกระจาย ที่เก็บข้อมูลเป็นเอกสาร JSON ใน Index และสร้าง Inverted Index ไว้ล่วงหน้า จึงค้นหาข้อความแบบ Full-text เรียงตามความเกี่ยวข้อง และสรุปข้อมูลจำนวนมากด้วย Aggregation หรือ ES|QL ได้เร็ว ข้อมูลกระจายอยู่หลายเครื่องผ่าน Shard และ Replica จึงขยายระบบได้ง่าย แต่ไม่ได้ออกแบบมาแทนฐานข้อมูลเชิงสัมพันธ์สำหรับงานธุรกรรม จึงมักใช้คู่กันโดยให้ Elasticsearch ดูแลการค้นหาและ Log

ส่ง Log จาก ASP.NET Core ไปยัง Elasticsearch ทำอย่างไร

วิธีที่นิยมคือใช้ Serilog ติดตั้งแพ็กเกจ Serilog.AspNetCore และ Elastic.Serilog.Sinks ซึ่งเป็น Sink ทางการของ Elastic ที่มาแทน Serilog.Sinks.Elasticsearch รุ่นเก่า จากนั้นตั้งค่าใน Program.cs หรือ appsettings.json โดยระบุ URL ของ Elasticsearch และ API Key แล้วเขียน Log ผ่าน ILogger ตามปกติ Log จะถูกส่งในรูปแบบ ECS เข้า Data Stream ที่จัดการอายุข้อมูลด้วย ILM ได้ จากนั้นสร้าง Data View ใน Kibana เพื่อค้นหาและดู Log เป็นกราฟ

รัน Elasticsearch และ Kibana ด้วย Docker Compose ทำอย่างไร

เขียนไฟล์ docker-compose.yml ที่มีบริการ elasticsearch เปิดพอร์ต 9200 และตั้ง discovery.type เป็น single-node สำหรับเครื่องพัฒนา กับบริการ kibana เปิดพอร์ต 5601 ที่ชี้ไปยัง elasticsearch ทั้งสองต้องใช้รุ่นเดียวกัน ตั้งแต่รุ่น 8 ขึ้นมา ระบบความปลอดภัยและ TLS เปิดเป็นค่าเริ่มต้น จึงต้องกำหนดรหัสผ่านของผู้ใช้ elastic และ kibana_system ให้เรียบร้อย จากนั้นรัน docker compose up -d แล้วเปิด Kibana ที่ localhost:5601 สำหรับการทดลองอย่างรวดเร็ว Elastic มีสคริปต์ start-local ให้ใช้ด้วย

หลักสูตร Elasticsearch and Kibana with .NET เหมาะกับใคร ต้องมีพื้นฐานอะไรมาก่อน

เหมาะกับนักพัฒนา .NET ผู้ดูแลระบบ ทีม DevOps และ DBA ที่ต้องเพิ่มระบบค้นหา หรือเก็บ ค้นหา และวิเคราะห์ Log ของแอป ควรเขียนภาษา C# ได้และเคยสร้างแอปหรือ Web API ด้วย ASP.NET Core มาบ้าง เข้าใจ JSON และการเรียก HTTP API และใช้ Command Line กับ Docker ขั้นพื้นฐานได้

เรียนจบหลักสูตร Elasticsearch and Kibana with .NET แล้วทำอะไรได้บ้าง

ติดตั้ง Elasticsearch และ Kibana ด้วย Docker อย่างปลอดภัย ออกแบบ Mapping และ Analyzer เขียน Query DSL, Aggregation และ ES|QL เชื่อมแอป .NET 10 ด้วย Elastic.Clients.Elasticsearch สร้าง Web API สำหรับค้นหาและ Sync ข้อมูล ส่ง Log จาก ASP.NET Core ด้วย Serilog เข้า Data Stream พร้อม ILM และวิเคราะห์ Log ใน Kibana ด้วย Discover, Dashboard และ Alert ผู้ผ่านการอบรมได้รับใบประกาศนียบัตร (Certificate of Completion) ที่มีเลขที่ของตัวเองและตรวจสอบออนไลน์ได้

จัดอบรมหลักสูตร Elasticsearch and Kibana with .NET ให้ทีมในองค์กรได้ไหม

ได้ หลักสูตรนี้จัดเป็นการอบรมแบบ In-house ให้ทีมในองค์กรได้ และปรับตัวอย่างให้ตรงกับงานของทีม เช่น ใช้รูปแบบ Log จากแอป .NET ที่ทีมดูแลอยู่เป็นโจทย์ หรือเน้นการย้ายจาก NEST มาใช้ Client รุ่นปัจจุบัน ขอใบเสนอราคาได้จากหน้านี้ หรือติดต่อทาง LINE @itgenius โทร 02-570-8449