ข้ามไปยังเนื้อหา

Microsoft Fabric: นำเข้าแถว

ใช้ Microsoft Fabric: ingest row เพื่อสตรีมหนึ่งแถวเข้าไปในตาราง Eventhouse (KQL) จากขั้นตอน journey ผ่าน Fabric ingest API ซึ่งแตกต่างจากจุด Integrations อื่นๆ ที่ใช้ token ของตัวเอง จุดนี้จะรับรองความถูกต้องผ่านแอปพลิเคชัน Entra ID ที่เชื่อมต่อเพียงครั้งเดียวสำหรับทั้งบัญชี ไม่มีช่อง token ในตัวจุดเอง

การใช้งานทั่วไป:

  • ป้อนข้อมูลตารางรายงาน: แทรกแถวต่อขั้นตอน journey ที่ไปถึง สำหรับแดชบอร์ดหรือ query ที่กำหนดเวลาไว้ในภายหลัง
  • บันทึกเหตุการณ์เมื่อเกิดขึ้น: สตรีมข้อมูล journey ดิบเข้าไปใน Eventhouse แทนที่จะรอ pipeline แบบชุด
  • เข้าร่วมกับข้อมูลที่มีอยู่: แทรกค่าอุปกรณ์หรือแท็กที่ตาราง Fabric ของคุณสามารถเข้าร่วมกับชุดข้อมูลของคุณเองได้

ก่อนที่คุณจะเริ่ม

Anchor link to

เชื่อมต่อแอปพลิเคชัน Entra ID ภายใต้ Settings > 3rd-party integrations > Microsoft Azure:

  1. ลงทะเบียนแอปพลิเคชันในไดเรกทอรี Entra ID ของคุณและสร้าง client secret สำหรับแอปพลิเคชันนั้น
  2. ใน Directory (tenant) ID ให้ป้อน tenant ของคุณ เช่น contoso.onmicrosoft.com
  3. ใน Application (client) ID ให้ป้อน client ID ของการลงทะเบียนแอป
  4. ใน Client secret ให้วาง secret นั้น จะถูกจัดเก็บแบบเขียนอย่างเดียว: Pushwoosh จะไม่แสดงอีกครั้ง ดังนั้นให้วางอันใหม่เพื่อแทนที่
  5. คลิก Connect Azure

หลังจากที่คุณเชื่อมต่อ Azure แล้ว ติดตั้งการผสานรวม เพื่อให้จุดปรากฏใน journey builder

ฟอร์มเชื่อมต่อ Settings Microsoft Azure พร้อมช่อง tenant ID, client ID และ client secret

มีสามสิ่งที่ต้องทำในฝั่ง Eventhouse ด้วย มิฉะนั้นคำขอจะล้มเหลว:

  • ตารางเป้าหมายต้องมีการแมปการนำเข้า JSON — การนำเข้าแบบสตรีมมิ่งของ JSON จะไม่ทำงานหากไม่มี
  • การลงทะเบียนแอปต้องมีบทบาท ingestor ใน Eventhouse ไม่มีปุ่มสำหรับสิ่งนี้ใน Fabric UI — ให้สิทธิ์โดยการรันคำสั่งนี้ในหน้าต่าง query ของ Eventhouse:
.add database ['<database name>'] ingestors ('aadapp=<Application (client) ID>;<Directory (tenant) ID>')
  • ฐานข้อมูล KQL ต้องเปิดใช้งานนโยบายการนำเข้าแบบสตรีมมิ่ง รันคำสั่งนี้ในหน้าต่าง query เดียวกัน:
.alter database ['<database name>'] policy streamingingestion enable

ให้คง ['...'] ไว้รอบชื่อฐานข้อมูลในคำสั่งเหล่านี้หากมีขีดกลาง — ชื่อที่มีขีดกลางโดยไม่มีวงเล็บจะแยกวิเคราะห์ไม่สำเร็จ

กำหนดค่าจุด

Anchor link to
  1. ลาก Microsoft Fabric: ingest row จากส่วน Integrations ของแผงด้านซ้ายไปยัง canvas
  2. ดับเบิลคลิกที่จุดและป้อน Step Name
  3. ใน Query URI host ให้ป้อนโฮสต์ของ Eventhouse ของคุณจาก Query URI ในหน้า System overview ของ Eventhouse อย่าใส่ https:// เช่น trd-abc123.z9.kusto.fabric.microsoft.com
ลิ้นชัก Microsoft Fabric ingest row ที่มี Step Name กรอกแล้ว และ Query URI host ตั้งค่าเป็น Kusto URL
  1. ใน KQL database ให้ป้อนชื่อฐานข้อมูลเป้าหมาย
ช่อง KQL database ตั้งค่าเป็น am-test
  1. ใน Table ให้ป้อนชื่อตารางเป้าหมาย
ช่อง Table ตั้งค่าเป็น Events
  1. ใน Ingestion mapping ให้ป้อนชื่อของการแมป JSON ที่สร้างขึ้นบนตารางนั้น
ช่อง Ingestion mapping ตั้งค่าเป็น EventsJsonMapping
  1. ใน Columns ให้เพิ่มหนึ่งแถวต่อคอลัมน์ Eventhouse ที่จะเขียน ป้อนชื่อคอลัมน์และค่า ชื่อต้องไม่ว่างและไม่ซ้ำกัน ค่าอาจเป็นข้อความคงที่หรือมาโครของ traveler เช่น {{tag:Name}} ซึ่งเป็นมาโครเดียวกับในเนื้อหาของ Webhook หรือคลิก Insert Dynamic Value เพื่อเลือก attribute ที่ขั้นตอนก่อนหน้าใน journey นี้สร้างขึ้น เช่น การตอบกลับของ LLM หรือค่า Webhook ที่แมปไว้
ตารางชื่อและค่าของ Columns ที่มี device_id แมปกับมาโคร hwid ของอุปกรณ์
  1. คลิก Save

การตอบกลับ

Anchor link to

traveler จะเดินทางต่อไปยังขั้นตอนใดก็ตามที่คุณเชื่อมต่อถัดไปบน canvas

Attributes หลังจากขั้นตอนทำงาน

Anchor link to

จุดนี้ไม่ได้แมปข้อมูลการตอบกลับใดๆ กลับเข้าไปใน journey

ความล้มเหลวและการตอบกลับที่ไม่คาดคิด

Anchor link to

เปิด Calls log ในลิ้นชักของจุดและตรวจสอบการตอบกลับ:

  • 401 หรือ 403 — ข้อมูลประจำตัวของแอปพลิเคชัน Entra ID ที่เชื่อมต่อหรือบทบาท ingestor ของมันไม่ถูกต้องหรือขาดหายไป
  • 520 พร้อมกับ StreamingIngestionException: Failed to initialize cursor tracker... — นโยบายการนำเข้าแบบสตรีมมิ่งของฐานข้อมูล KQL ไม่ได้เปิดใช้งาน แฟล็ก permanent: false ของข้อผิดพลาดเองอ่านว่า “ลองใหม่ภายหลัง” แต่การลองใหม่ไม่ได้แก้ไขปัญหานี้ รัน .alter database ['<database name>'] policy streamingingestion enable ในหน้าต่าง query ของ Eventhouse (ดู ก่อนที่คุณจะเริ่ม)

คำขอที่ล้มเหลวจะทำให้ traveler ออกจาก journey ดู ข้อผิดพลาดและคำขอที่ล้มเหลว

สถานการณ์ตัวอย่าง: การสตรีมกิจกรรม journey ไปยังแดชบอร์ด Fabric

Anchor link to

ทีมต้องการแดชบอร์ดสดของทุกขั้นตอนที่ไปถึงใน journey ที่ใช้งานอยู่ โดยไม่ต้องรอการส่งออกเป็นชุด

  1. เพิ่ม Microsoft Fabric: ingest row ทันทีหลังจากขั้นตอนที่คุณต้องการติดตาม ตั้งค่า KQL database เป็น am-test, Table เป็น Events, และ Ingestion mapping เป็น EventsJsonMapping ใน Columns ตั้งค่า device_id เป็น {{device:hwid}}
  2. คลิก Save

เมื่อสิ่งนี้ทำงาน traveler แต่ละคนที่ไปถึงขั้นตอนนี้จะปรากฏในตาราง Eventhouse ภายในไม่กี่วินาที พร้อมสำหรับแดชบอร์ด