Files
wms-app/sdlc/2-SI Process (12 Work Product)/19.Product Operation Guide/200-WMS-26-001-00 Product Operation Guide 25690817 V1.0 ThS.md
T
ThanakornandClaude Opus 5.5 6c857005c0 docs(sdlc): write each work product as of its own date
- SOW, plan and design no longer cite the Aug baseline commit or the package tag
- Work Schedule status derived from its date; Test Case has no results yet
- build fails when a document cites a later commit, tag, ISS or ID (timeline.mjs)

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-09-25 14:52:21 +07:00

13 KiB
Raw Blame History

Product Operation Guide

| Document No | Product Operation Guide | Release, Version, By: | 25690817 V1.0 ThS | | Project Name | โครงการพัฒนาระบบบริหารจัดการคลังสินค้า (BRN WMS) บริษัท บี.อาร์.เอ็น เอ็นเตอร์ไพรส์ จำกัด | | Project Code | 200-WMS-26-001-00 | | Title | เอกสารคู่มือปฏิบัติงานสำหรับผู้ดูแลระบบ | | Project Period | 5 มกราคม 2569 – 24 สิงหาคม 2569 | | Organizer | คุณอภิรัชช์ สุภัทรประทีป (Project Manager) | | Recorder | คุณเยาวลักษณ์ บางชมภู (Document Control) |

วัตถุประสงค์ (Objective)

คู่มือฉบับนี้จัดทำขึ้นเพื่อเป็นแนวทางสำหรับผู้ดูแลระบบ (System Administrator) ในการติดตั้ง ตั้งค่า เฝ้าระวัง สำรองข้อมูล และกู้คืนระบบบริหารจัดการคลังสินค้า เพื่อให้การปฏิบัติงานมีมาตรฐานและกู้คืนระบบได้อย่างรวดเร็ว

1 ทางเลือกในการติดตั้ง

ลำดับ วิธีการติดตั้ง กลไก ไฟล์อ้างอิง
1 ติดตั้งแบบ Container (แนะนำ) Docker Compose: php-apache, mariadb, node/pm2 docker-compose.yml, docker/
2 ติดตั้งแบบ Manual ติดตั้ง PHP, MariaDB และ Node.js แล้วสร้างฐานข้อมูลด้วยสคริปต์ setup.php

2 ขั้นตอนการติดตั้งแบบ Container

  1. คัดลอก .env.example เป็น .env หรือรันสคริปต์ docker/init-env.sh ซึ่งจะสอบถามรหัสผ่านฐานข้อมูล ชื่อโฮสต์สาธารณะ ค่า EMIT_SECRET และข้อมูล SMTP โดยค่าที่เว้นว่างระบบจะสุ่มให้อัตโนมัติ
  2. รันคำสั่ง docker compose up -d --build เพื่อสร้างและเริ่มบริการทั้งสามส่วน
  3. ตรวจสอบว่า Container php-apache สร้างไฟล์ app/config.php จาก .env เรียบร้อยแล้ว โดยไฟล์นี้ไม่ถูกเก็บใน Repository และไม่ฝังอยู่ใน Image
  4. ตรวจสอบว่าฐานข้อมูล wms และ wms2 ถูกสร้างครบถ้วน และเข้าใช้งานระบบผ่านชื่อโฮสต์ที่กำหนดได้

3 ขั้นตอนการติดตั้งแบบ Manual

  1. เตรียมเครื่องแม่ข่าย Linux ที่ติดตั้ง PHP 8 ขึ้นไป, MariaDB และ Node.js
  2. ตั้งค่าไฟล์ app/config.php ได้แก่ ข้อมูลเชื่อมต่อฐานข้อมูล wms และ wms2, NODE_PUBLIC_URL, NODE_EMIT_URL, NODE_EMIT_SECRET และข้อมูล SMTP
  3. รัน setup.php หนึ่งครั้งเพื่อสร้างโครงสร้างฐานข้อมูลทั้งหมด
  4. เริ่มบริการ Node.js (nodejs/server.js และ nodejs/scheduler.js) ด้วย pm2 ตามไฟล์ nodejs/ecosystem.config.js

4 การตั้งค่าระบบ

รายการ ที่ตั้ง หมายเหตุ
ค่าตั้งค่าแอปพลิเคชัน app/config.php สร้างขึ้นตอนติดตั้ง ไม่นำเข้า Repository
ค่าความลับของสภาพแวดล้อม .env (Docker) หรือตัวแปรสภาพแวดล้อม (Manual) ยกเว้นจาก Git ด้วย .gitignore
ค่าตั้งค่าระดับบริษัท เมนูตั้งค่าในระบบ (app/setting/) ข้อมูลบริษัท SMTP และการตั้งค่าการใช้งาน
เขตเวลา $time_zone ใน app/config.php กำหนดเป็น Asia/Bangkok

5 การเฝ้าระวังระบบ (Monitoring)

ลำดับ รายการตรวจสอบ วิธีการ ความถี่
1 บริการเว็บแอปพลิเคชัน ตรวจสอบว่าระบบตอบสนองและผู้ใช้เข้าสู่ระบบได้ ทุก 5 นาที (อัตโนมัติ)
2 ฐานข้อมูล ตรวจสอบว่าฐานข้อมูล wms และ wms2 เชื่อมต่อได้ ทุก 5 นาที (อัตโนมัติ)
3 บริการ Node.js ตรวจสอบสถานะ server.js และ scheduler.js ภายใต้ pm2 และตรวจ Log ใน nodejs/logs/ ทุก 5 นาที (อัตโนมัติ)
4 งานตามกำหนดเวลา ตรวจสอบว่างานสรุปยอดและงานแจ้งเตือนทำงานครบและไม่ซ้ำซ้อน รายวัน

เมื่อการตรวจสอบล้มเหลวติดต่อกัน 2 ครั้ง ระบบจะส่งอีเมลแจ้งเตือนผู้ดูแลระบบ โดย pm2 จะพยายามเริ่มบริการใหม่เป็นลำดับแรก หากไม่สามารถกู้คืนบริการได้ภายใน 30 นาที ผู้ดูแลระบบต้องแจ้งผู้จัดการโครงการ และหากเหตุขัดข้องเกิน 2 ชั่วโมงหรือกระทบการดำเนินธุรกิจอย่างมีนัยสำคัญ ต้องแจ้ง Project Sponsor

6 การสำรองข้อมูลและการกู้คืน

รายการ กลไก รอบการทำงาน การเก็บรักษา
Source Code และค่าตั้งค่าแม่แบบ Git 2 Remote (origin, backup) ทุกครั้งที่ส่งมอบหรือปรับ Baseline เก็บถาวรใน Repository
ฐานข้อมูล wms และ wms2 Export อัตโนมัติไปยังพื้นที่จัดเก็บบนคลาวด์ที่บริษัทควบคุม ทุกวัน เวลา 02:00 น. รายวันเก็บ 30 วัน สิ้นเดือนเก็บ 12 เดือน
เอกสารโครงการ ชุด PDF ที่สร้างจากเอกสารต้นฉบับ ทุกครั้งที่ปรับปรุงเอกสารส่งมอบ เก็บถาวรใน Repository

6.1 ขั้นตอนการกู้คืนฐานข้อมูล

  1. ผู้ดูแลระบบเลือกชุดสำรองที่ต้องการจากพื้นที่จัดเก็บบนคลาวด์ และยืนยันวันที่พร้อมความสมบูรณ์ของไฟล์
  2. กู้คืนชุดสำรองเข้าสู่สภาพแวดล้อมที่ไม่ใช่ระบบใช้งานจริงก่อนเสมอ
  3. ตรวจสอบการเชื่อมต่อฐานข้อมูล wms และ wms2 พร้อมตรวจสอบข้อมูลหลักและรายการตัวอย่าง
  4. กรณีกู้คืนระบบใช้งานจริง ให้บันทึกจุดกู้คืน หยุดบริการที่เกี่ยวข้อง กู้คืนชุดสำรองที่ตรวจสอบแล้ว เริ่มบริการแอปพลิเคชันและ Node.js ใหม่ แล้วตรวจสอบสถานะตามหัวข้อ 5
  5. กรณีการสำรองข้อมูลล้มเหลวหรือไม่ทำงานตามกำหนด ผู้ดูแลระบบต้องตรวจสอบสาเหตุและสั่งทำงานซ้ำ

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

7 การปิดรายการควบคุมด้านปฏิบัติการ

ลำดับ รายการควบคุม ผู้รับผิดชอบ สถานะ หลักฐานการปิดรายการ
OP-001 การสำรองและกู้คืนฐานข้อมูล wms และ wms2 แบบอัตโนมัติ System Administrator กำหนดปิดรายการ 23 สิงหาคม 2569 หัวข้อ 6 ระบุรอบการสำรอง ที่จัดเก็บ การเก็บรักษา ขั้นตอนกู้คืน และแผนการทดสอบกู้คืน
OP-002 การเฝ้าระวังระบบและการแจ้งเตือนเมื่อเกิดเหตุขัดข้อง System Administrator กำหนดปิดรายการ 23 สิงหาคม 2569 หัวข้อ 5 ระบุรอบการตรวจสอบ เงื่อนไขการแจ้งเตือน ผู้รับแจ้ง และขั้นตอนการยกระดับ

8 การจัดการผู้ใช้งานและสิทธิ์

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

ผู้จัดทำเอกสาร (Secretary)

ชื่อ ตำแหน่ง ลายเซ็น วันที่
คุณธนกร สถิตวิทยากุล Developer

ผู้ตรวจสอบเอกสาร (Reviewer)

ชื่อ ตำแหน่ง ลายเซ็น วันที่
คุณนพพงษ์ เจริญสุข System Analyst

ผู้อนุมัติ (Approval)

ชื่อ ตำแหน่ง ลายเซ็น วันที่
คุณเสรี วิริยะสกุลธรณ์ Project Sponsor