การเขียนข้อมูลการวิเคราะห์ไปยังไฟล์

โดยค่าเริ่มต้น ข้อมูลการวิเคราะห์ที่เก็บรวบรวมโดยเครื่องมือประมวลผลข้อความจะถูกอัปโหลดไปยัง Qpid และ Postgres เพื่อประมวลผล จากนั้นคุณจะดูข้อมูลการวิเคราะห์ได้ใน Edge UI

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

คุณสามารถเลือกใช้ทั้ง 2 ตัวเลือกได้เช่นกัน ซึ่งหมายความว่าคุณสามารถอัปโหลดข้อมูลวิเคราะห์ไปยัง Qpid/Postgres และยังบันทึกข้อมูลลงในดิสก์ด้วย

ชื่อไฟล์และตำแหน่ง

โดยค่าเริ่มต้น ถ้าคุณเปิดใช้การเขียนข้อมูลการวิเคราะห์ลงในไฟล์ดิสก์ ไฟล์จะถูกเขียนลงใน ไดเรกทอรีต่อไปนี้

/opt/apigee/var/log/edge-message-processor/ax/tmp

Edge สร้างไดเรกทอรีใหม่ภายใต้ /tmp สำหรับไฟล์ข้อมูลทุกๆ 1 นาที รูปแบบของชื่อไดเรกทอรีคือ

org~env~yyyyMMddhhmmss

เช่น

myorg~prod~20190909163500
myorg~prod~20190909163600

แต่ละไดเรกทอรีจะมีไฟล์ .gz พร้อมด้วยไฟล์ข้อมูลในช่วงเวลานั้นๆ รูปแบบของ ชื่อไฟล์ .gz คือ

4DigitRandomHex_StartTime.StartTimePlusInterval_internalHostIP_hostUUID_writer_index.txt.gz

Edge จะย้ายไดเรกทอรีและไฟล์ .gz ที่มีมาจาก /tmp ในช่วงเวลาที่สม่ำเสมอ ไปยังไดเรกทอรีใดไดเรกทอรีหนึ่งต่อไปนี้ ตามการตั้งค่าของ uploadToCloud พร็อพเพอร์ตี้การกำหนดค่าตัวประมวลผลข้อความ:

  • uploadToCloud = false: ย้ายไฟล์ไปที่ /opt/apigee/var/log/edge-message-processor/ax/staging แล้ว
  • uploadToCloud = true: (ค่าเริ่มต้น): ย้ายไฟล์ไปที่ /opt/apigee/var/log/edge-message-processor/ax/failed

แตกข้อมูลจากไดเรกทอรี /staging หรือ /failed เพื่อรับ ไฟล์ข้อมูลวิเคราะห์

พร็อพเพอร์ตี้การกำหนดค่า

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

พร็อพเพอร์ตี้ คำอธิบาย
conf_analytics_analytics.saveToDisk

ตั้งค่าเป็น true เพื่อกำหนดค่าตัวประมวลผลข้อความให้เขียนข้อมูลการวิเคราะห์ไปยังไฟล์ดิสก์

ค่าเริ่มต้นคือ false

conf_analytics_analytics.sendToQueue

ตั้งค่าเป็น true เพื่อกำหนดค่าเครื่องมือประมวลผลข้อความจะอัปโหลดข้อมูลไปยัง Qpid/Postgres ตั้งค่าเป็น false เพื่อปิดใช้การเขียนข้อมูลวิเคราะห์ไปยัง Qpid/Postgres

ค่าเริ่มต้นคือ true

conf_analytics_analytics.baseDataDirectoryPath

ระบุเส้นทางฐานที่เขียนไฟล์ข้อมูลการวิเคราะห์

ค่าเริ่มต้นคือ /opt/apigee/var/log/edge-message-processor/ax.

conf_analytics_analytics.allocatedDiskSpaceInMBytes

ระบุพื้นที่ในดิสก์ที่จัดสรรสำหรับไฟล์การวิเคราะห์เป็นเมกะไบต์

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

conf_analytics_analytics.uploadToCloud

ควบคุมตำแหน่งสุดท้ายของไฟล์การวิเคราะห์

  • false: ย้ายไฟล์ไปยัง /opt/apigee/var/log/edge-message-processor/ax/staging แล้ว
  • true (ค่าเริ่มต้น): ย้ายไฟล์ไปที่ /opt/apigee/var/log/edge-message-processor/ax/failed

หมายเหตุ: แม้ว่าพร็อพเพอร์ตี้นี้จะเรียกว่า uploadToCloud แต่ไม่มีข้อมูล จะอัปโหลดไปยังระบบคลาวด์ ข้อมูลการวิเคราะห์ทั้งหมดจะยังคงอยู่ในระบบการติดตั้งของคุณ

วิธีตั้งค่าคุณสมบัติเหล่านี้

  1. เปิดไฟล์ message-processor.properties ในตัวแก้ไข หากไม่มีไฟล์ ให้สร้างตามขั้นตอนต่อไปนี้

    vi /opt/apigee/customer/application/message-processor.properties
  2. ตั้งค่าพร็อพเพอร์ตี้ตามต้องการดังนี้

    # Enable writing analytics data to disk.
    conf_analytics_analytics.saveToDisk=true
    # Disable writing analytics data to Qpid/Postgres.
    conf_analytics_analytics.sendToQueue=false
    
    # Specify base directory for analytics data files.
    conf_analytics_analytics.baseDataDirectoryPath=/opt/apigee/var/smg
    
    # Set the disk space available for analytics files.
    conf_analytics_analytics.allocatedDiskSpaceInMBytes=3072
    # Move final analytics data to files to the /staging directory.
    conf_analytics_analytics.uploadToCloud=false
  3. บันทึกการเปลี่ยนแปลง
  4. ตรวจสอบว่าไฟล์พร็อพเพอร์ตี้เป็นของ "apigee" ผู้ใช้:

    chown apigee:apigee /opt/apigee/customer/application/message-processor.properties
  5. ตั้งค่าของพร็อพเพอร์ตี้ consumer-type เป็น ax สำหรับค่า กลุ่ม Analytics axgroup-001 กลุ่ม:

    curl -X POST -H "Content-Type:application/json" \
    "http://ms-ip:8080/v1/analytics/groups/ax/axgroup-001/properties?propName=consumer-type&propValue=ax" \
    -u sysAdminEmail:sysAdminPWord

    โดยค่าเริ่มต้น ชื่อกลุ่ม Analytics คือ axgroup-001 ในไฟล์การกำหนดค่าสำหรับ การติดตั้ง Edge คุณสามารถตั้งชื่อกลุ่ม Analytics ได้โดยใช้พร็อพเพอร์ตี้ AXGROUP หากไม่แน่ใจเกี่ยวกับชื่อกลุ่ม Analytics ให้เรียกใช้คำสั่งต่อไปนี้ในเซิร์ฟเวอร์การจัดการ โหนดเพื่อแสดง:

    apigee-adminapi.sh analytics groups list \
      --admin sysAdminEmail --pwd sysAdminPword --host localhost

    คำสั่งนี้จะแสดงชื่อกลุ่ม Analytics ในช่อง name

  6. รีสตาร์ทโปรแกรมประมวลผลข้อความ

    /opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart

    หลังจากรีสตาร์ท ตัวประมวลผลข้อความจะเขียนข้อมูลการวิเคราะห์ไปยังไฟล์ข้อมูล

  7. ทำซ้ำขั้นตอนเหล่านี้สำหรับ Message Processor ทั้งหมด