0Pricing
Cloud & IT Cert Prep · บทเรียน

Azure Logic Apps

สร้างเวิร์กโฟลว์การผสานรวมแบบไม่ต้องเขียนโค้ดใน Logic Apps ซึ่งทริกเกอร์เมื่อมีอีเมลใหม่ แปลงข้อมูลเพย์โหลด และเขียนระเบียนไปยัง Azure SQL Database

Azure Logic Apps เป็นบทเรียน Cloud & IT Cert Prep ฟรีบน CoddyKit นี่คือบทเรียนที่ 3 จากทั้งหมด 4 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน Cloud & IT Cert Prep และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส Cloud & IT Cert Prep มีบทเรียนทั้งหมด 4 บทเรียน

Azure Logic Apps คืออะไร

Azure Logic Apps คือแพลตฟอร์มการผสานระบบแบบใช้โค้ดน้อยหรือไม่ต้องใช้โค้ด ซึ่งช่วยให้คุณสร้างเวิร์กโฟลว์อัตโนมัติด้วยตัวออกแบบแบบลากแล้ววาง แต่ละเวิร์กโฟลว์ประกอบด้วย ทริกเกอร์ (เหตุการณ์ที่เริ่มต้นเวิร์กโฟลว์) และ การดำเนินการ อย่างน้อยหนึ่งรายการ (ขั้นตอนที่ทำงานตามลำดับ) Logic Apps เชื่อมต่อบริการหลายร้อยรายการ เช่น Office 365, Salesforce, ServiceNow, Azure SQL, Blob Storage และอื่น ๆ อีกมากมายผ่านตัวเชื่อมต่อที่สร้างไว้ล่วงหน้า โดยไม่ต้องเขียนโค้ดผสานระบบใหม่ตั้งแต่ต้น

Logic Apps เทียบกับ Azure Functions

ทั้ง Logic Apps และ Azure Functions รองรับระบบอัตโนมัติแบบขับเคลื่อนด้วยเหตุการณ์และ serverless — แต่มุ่งเป้าไปที่ผู้ใช้คนละกลุ่ม Logic Apps ออกแบบมาสำหรับผู้เชี่ยวชาญด้านการผสานระบบและนักวิเคราะห์ธุรกิจที่ต้องการเวิร์กโฟลว์แบบภาพโดยไม่ต้องเขียนโค้ด พร้อมตัวเชื่อมต่อระดับองค์กร ส่วน Azure Functions ออกแบบมาสำหรับนักพัฒนาที่ต้องการควบคุมภาษาการเขียนโปรแกรมได้อย่างเต็มที่ ตรรกะทางธุรกิจแบบกำหนดเอง และเวลาแฝงที่ต่ำกว่า สำหรับตรรกะแบบมีเงื่อนไขที่ซับซ้อนหรือเส้นทางที่ต้องการประสิทธิภาพสูง Azure Functions เหมาะสมกว่า แต่สำหรับการผสานระบบ SaaS และการทำกระบวนการทางธุรกิจให้เป็นอัตโนมัติ Logic Apps เหมาะกว่า

การโฮสต์ Logic Apps: Consumption เทียบกับ Standard

Logic Apps มีแผนการโฮสต์สองแบบ Consumption (แบบคลาสสิก) จะเรียกใช้เวิร์กโฟลว์บนโครงสร้างพื้นฐานแบบหลายผู้เช่าที่ใช้ร่วมกัน และคิดค่าบริการตามการดำเนินการแต่ละครั้ง เหมาะสำหรับระบบอัตโนมัติที่ทำงานไม่บ่อย ส่วน Standard จะทำงานบนโครงสร้างพื้นฐาน App Service แบบผู้เช่ารายเดียวโดยเฉพาะ รองรับการผสานรวม VNet ตัวเชื่อมต่อแบบกำหนดเองผ่าน API ที่มีการจัดการ และหลายเวิร์กโฟลว์ภายใน Logic App เดียว Standard คิดค่าบริการตามชั่วโมงของแผน เช่นเดียวกับ App Service ควรเลือก Standard สำหรับเวิร์กโฟลว์ระดับองค์กรที่ต้องการการแยกเพื่อให้เป็นไปตามข้อกำหนดหรือการเชื่อมต่อ VNet

# Create a Consumption Logic App
az logic workflow create \
  --name MyLogicApp \
  --resource-group MyRG \
  --location eastus \
  --definition @workflow-definition.json

# Create a Standard Logic App (requires an App Service plan)
az logicapp create \
  --name MyStandardLogicApp \
  --resource-group MyRG \
  --plan MyAppServicePlan \
  --storage-account mystorageaccount

ทริกเกอร์: การเริ่มเวิร์กโฟลว์

เวิร์กโฟลว์ของ Logic Apps เริ่มต้นด้วยทริกเกอร์ที่ทำงานเมื่อเกิดเหตุการณ์เฉพาะ ทริกเกอร์แบบสอบถามจะตรวจสอบบริการเป็นระยะ (เช่น “เมื่อมีอีเมลใหม่เข้ามา” ใน Outlook ซึ่งตรวจสอบทุกนาที) ทริกเกอร์แบบพุชใช้เว็บฮุกและทำงานทันทีเมื่อเกิดเหตุการณ์ (เช่น “เมื่อได้รับคำขอ HTTP”) ส่วน ทริกเกอร์แบบเกิดซ้ำจะทำงานตามกำหนดเวลา ข้อมูลเอาต์พุตของทริกเกอร์ (เนื้อหาอีเมล เพย์โหลด HTTP) จะพร้อมใช้งานสำหรับการดำเนินการถัดไปทั้งหมดในเวิร์กโฟลว์

// Workflow definition snippet: HTTP trigger
{
  'definition': {
    'triggers': {
      'manual': {
        'type': 'Request',
        'kind': 'Http',
        'inputs': {
          'schema': {
            'type': 'object',
            'properties': {
              'customerName': { 'type': 'string' },
              'orderTotal': { 'type': 'number' }
            }
          }
        }
      }
    }
  }
}

การดำเนินการและตัวเชื่อมต่อ

Actions คือขั้นตอนที่ทำงานหลังทริกเกอร์ แต่ละการดำเนินการใช้ ตัวเชื่อมต่อ ซึ่งเป็นอะแดปเตอร์ผสานระบบที่สร้างไว้ล่วงหน้าสำหรับบริการหรือโพรโทคอลเฉพาะ Logic Apps มีตัวเชื่อมต่อในตัวและตัวเชื่อมต่อที่มีการจัดการมากกว่า 400 รายการ รวมถึง Office 365 Outlook, SharePoint, Azure SQL Database, Salesforce, Slack, Twitter/X, SAP และตัวเชื่อมต่อ HTTP, SFTP และ FTP ทั่วไป ตัวเชื่อมต่อที่มีการจัดการจะจัดการการตรวจสอบสิทธิ์และการจัดการการเชื่อมต่อโดยอัตโนมัติ

// Workflow: send an email via Office 365 after HTTP trigger
// Actions section of the workflow definition:
{
  'Send_an_email': {
    'type': 'ApiConnection',
    'inputs': {
      'host': { 'connection': { 'name': '@parameters("$connections")["office365"]["connectionId"]' } },
      'method': 'post',
      'path': '/v2/Mail',
      'body': {
        'To': 'manager@contoso.com',
        'Subject': 'New Order from @{triggerBody()["customerName"]}',
        'Body': 'Order total: @{triggerBody()["orderTotal"]}'
      }
    }
  }
}

โฟลว์การควบคุม: เงื่อนไขและลูป

Logic Apps รองรับโครงสร้างโฟลว์การควบคุมมาตรฐาน การดำเนินการ Condition จะแยกเวิร์กโฟลว์ตามนิพจน์ (เช่น orderTotal > 1000) การดำเนินการ Switch จะกำหนดเส้นทางไปยังสาขาต่าง ๆ ตามค่า ลูป For Each จะวนซ้ำในอาร์เรย์ (เช่น ประมวลผลไฟล์แนบแต่ละไฟล์ในอีเมล) ลูป Until จะทำการดำเนินการซ้ำจนกว่าเงื่อนไขจะเป็นจริง โครงสร้างทั้งหมดนี้กำหนดค่าได้ด้วยภาพในตัวออกแบบ หรือกำหนดเป็น JSON ในคำจำกัดความของเวิร์กโฟลว์

// Condition action in workflow definition
{
  'Check_order_value': {
    'type': 'If',
    'expression': {
      'and': [{
        'greater': ['@triggerBody()["orderTotal"]', 1000]
      }]
    },
    'actions': {
      'Notify_Manager': { /* send email action */ }
    },
    'else': {
      'actions': {
        'Auto_Approve': { /* approve action */ }
      }
    }
  }
}

นิพจน์และฟังก์ชัน

Logic Apps ใช้ ภาษานิพจน์เพื่อแปลงและอ้างอิงข้อมูลระหว่างการดำเนินการ นิพจน์จะอยู่ภายใน @{...} และรองรับฟังก์ชันในตัวสำหรับสตริง (concat, toLower) อาร์เรย์ (length, first, filter) วันที่ (utcNow, addDays) การจัดการ JSON และการอ้างอิงเวิร์กโฟลว์ (triggerBody(), outputs('ActionName')) ฟังก์ชันเหล่านี้จะได้รับการประเมินขณะทำงานเมื่อขั้นตอนนั้นทำงาน

// Expression examples in Logic Apps actions
// Reference trigger data
'@triggerBody()["customerName"]'

// String manipulation
'@toUpper(triggerBody()["customerName"])'

// Date operations
'@addDays(utcNow(), 7)' // One week from now

// Reference previous action output
'@outputs("Get_customer")["body"]["email"]'

// Conditional expression
'@if(greater(triggerBody()["total"], 1000), "VIP", "Standard")'

การจัดการข้อผิดพลาด: Run After และการลองใหม่

การดำเนินการแต่ละรายการใน Logic Apps มีการตั้งค่า Run After ซึ่งควบคุมว่าจะให้ทำงานเมื่อใด ได้แก่ หลังจากขั้นตอนก่อนหน้าสำเร็จ ล้มเหลว หมดเวลา หรือถูกข้าม การตั้งค่านี้ช่วยให้จัดการข้อผิดพลาดได้อย่างมีประสิทธิภาพ — เพิ่มการดำเนินการชดเชยหรือแจ้งเตือนที่ทำงานเฉพาะเมื่อขั้นตอนก่อนหน้าล้มเหลว นอกจากนี้ การดำเนินการแต่ละรายการยังมี นโยบายการลองใหม่ ที่กำหนดค่าได้ (ช่วงเวลาคงที่หรือการเพิ่มช่วงเวลารอแบบทวีคูณ) เพื่อจัดการความล้มเหลวชั่วคราวจากบริการปลายทางโดยอัตโนมัติ

// Action that runs only when a previous action fails
{
  'Send_failure_alert': {
    'type': 'ApiConnection',
    'runAfter': {
      'Process_order': ['Failed', 'TimedOut']
    },
    'inputs': { /* Teams notification */ },
    'operationOptions': 'DisableAsyncPattern',
    'runtimeConfiguration': {
      'staticResult': null
    }
  }
}

การผสานรวมกับบริการ Azure

Logic Apps ผสานรวมกับบริการหลักของ Azure ได้โดยตรงทั้งในฐานะทริกเกอร์และการดำเนินการ คุณสามารถเริ่มเวิร์กโฟลว์เมื่อ มี Blob ถูกเพิ่มลงในคอนเทนเนอร์พื้นที่จัดเก็บ เขียนผลลัพธ์ลงใน Azure SQL Database ส่งข้อความไปยัง Azure Service Bus เรียกใช้ Azure Function สำหรับตรรกะแบบกำหนดเอง หรือบันทึกผลลัพธ์ไปยัง พื้นที่ทำงาน Log Analytics ด้วยเหตุนี้ Logic Apps จึงเป็นชั้นการประสานงานที่มีประสิทธิภาพสำหรับเชื่อมบริการ Azure เฉพาะทางเข้าด้วยกันโดยไม่ต้องเขียนโค้ดเอง

// Azure Blob trigger + SQL Database action pattern
// Trigger: 'When a blob is added or modified'
// Action 1: Read blob contents
// Action 2: Parse CSV/JSON body
// Action 3: 'Insert row' into Azure SQL Database
// Action 4: 'Delete blob' from source container
// Action 5: Send success notification email
//
// No custom code required for this common ETL pattern

การตรวจสอบและประวัติการทำงาน

การทำงานของเวิร์กโฟลว์ Logic Apps ทุกครั้งจะถูกบันทึกไว้ใน ประวัติการทำงาน ซึ่งเข้าถึงได้ในพอร์ทัล Azure คุณสามารถตรวจสอบอินพุต เอาต์พุต ระยะเวลา และข้อความข้อผิดพลาดของการทำงานแต่ละครั้งในระดับการดำเนินการแต่ละรายการ ทำให้การแก้ไขจุดบกพร่องทำได้ง่าย เปิดใช้ การบันทึกข้อมูลเพื่อการวินิจฉัย เพื่อส่งประวัติการทำงานและบันทึกทริกเกอร์ไปยังพื้นที่ทำงาน Log Analytics สำหรับการวิเคราะห์และการแจ้งเตือนในระยะยาว ตั้งค่าการแจ้งเตือน Azure Monitor จากเมตริก RunsFailed เพื่อค้นหาเวิร์กโฟลว์ที่ทำงานผิดพลาด

# Enable diagnostic logging for a Logic App
az monitor diagnostic-settings create \
  --resource '/subscriptions/.../providers/Microsoft.Logic/workflows/MyLogicApp' \
  --name 'LogAnalyticsLogs' \
  --workspace /subscriptions/.../workspaces/MyLogAnalytics \
  --logs '[{"category": "WorkflowRuntime", "enabled": true, "retentionPolicy": {"days": 30, "enabled": true}}]'

เมื่อใดควรเลือก Logic Apps

เลือก Logic Apps สำหรับ: การผสานรวม SaaS และแอปพลิเคชันระดับองค์กร (Salesforce, SAP, ServiceNow) การทำกระบวนการทางธุรกิจให้เป็นอัตโนมัติด้วยลำดับงานการอนุมัติ ไปป์ไลน์ ETL ที่เริ่มทำงานเมื่อมีการอัปโหลดไฟล์ ลำดับงานสำหรับการแจ้งเตือนและการเตือน และสถานการณ์ที่ผู้ที่ไม่ใช่นักพัฒนา (นักวิเคราะห์ธุรกิจ) จำเป็นต้องแก้ไขขั้นตอนของลำดับงานโดยไม่ต้องเขียนโค้ด หลีกเลี่ยงการใช้ Logic Apps สำหรับสถานการณ์ที่มีความถี่สูงและต้องการเวลาแฝงต่ำ (ให้ใช้ Azure Functions แทน) หรือเมื่อคุณต้องใช้โครงสร้างการเขียนโปรแกรมที่ซับซ้อนซึ่งไม่มีในภาษานิพจน์

ตรวจสอบความเข้าใจอย่างรวดเร็ว

ทดสอบความเข้าใจแนวคิด Microsoft Azure Fundamentals (AZ-900) จากบทเรียนนี้

สรุปบทเรียน

ในบทเรียนนี้ คุณได้เรียนรู้ว่า Azure Logic Apps ให้บริการทำลำดับงานอัตโนมัติแบบใช้โค้ดน้อย พร้อมตัวเชื่อมต่อที่สร้างไว้ล่วงหน้ามากกว่า 400 รายการ การตั้งค่า Run After ช่วยให้จัดการข้อผิดพลาดแยกตามการดำเนินการได้อย่างละเอียด และ Logic Apps เหมาะอย่างยิ่งสำหรับ การผสานรวม SaaS และการทำกระบวนการทางธุรกิจให้เป็นอัตโนมัติ ในกรณีที่ผู้ที่ไม่ใช่นักพัฒนาจำเป็นต้องแก้ไขลำดับงาน ต่อไปเราจะศึกษา Event Grid และสถาปัตยกรรมที่ขับเคลื่อนด้วยเหตุการณ์

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

บทเรียน “Azure Logic Apps” ฟรีหรือไม่

ใช่ — ข้อความเต็มของ “Azure Logic Apps” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส Cloud & IT Cert Prep ให้อัปเกรดเป็น CoddyKit PRO คอร์ส Cloud & IT Cert Prep มีบทเรียนทั้งหมด 4 บทเรียน

คุณจะเรียนรู้อะไรในบทเรียน “Azure Logic Apps”

สร้างเวิร์กโฟลว์การผสานรวมแบบไม่ต้องเขียนโค้ดใน Logic Apps ซึ่งทริกเกอร์เมื่อมีอีเมลใหม่ แปลงข้อมูลเพย์โหลด และเขียนระเบียนไปยัง Azure SQL Database คุณปฏิบัติ Cloud & IT Cert Prep ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน

คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน Cloud & IT Cert Prep หรือไม่

ไม่จำเป็นต้องมีประสบการณ์มาก่อน Cloud & IT Cert Prep บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 3 จากทั้งหมด 4 บทเรียน

บทเรียน “Azure Logic Apps” ใช้เวลานานแค่ไหน

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

ฉันเขียนและรันโค้ดในบทเรียน Cloud & IT Cert Prep นี้ได้ไหม

ได้ บทเรียน Cloud & IT Cert Prep ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ

บทเรียนทั้งหมดในหลักสูตรนี้

  1. ทริกเกอร์และการผูกของ Azure Functions
  2. Durable Functions สำหรับเวิร์กโฟลว์ที่มีสถานะ
  3. Azure Logic Apps
  4. Event Grid และสถาปัตยกรรมที่ขับเคลื่อนด้วยเหตุการณ์
← กลับไปที่ Cloud & IT Cert Prep