เทคนิคการใช้ LINE แปลงข้อความรูปภาพ เป็นตัวอักษร Text (ใช้ภาษาไทยได้สมบูรณ์มาก)

พึ่งเปิดตัวทั้งใน LINE สมาร์ทโฟน และ LINE ในเครื่อง PC สำหรับวิธีการแปลงข้อความรูปภาพ ให้กลายเป็นข้อความ Text ตัวอักษร โดยไม่ต้องเสียเวลามานั่งพิมพ์ใหม่ และวิธีการนี้ยังสามารถแปลเป็นภาษาอื่นๆ จากข้อความ Text ที่ได้จากการแปลงข้อความรูปภาพแล้วอีกด้วย

Read More »

จัดระเบียบ Tab บน Chrome ด้วยเทเลทับบี้ เอ้ย Toby (โทบี้) กันดีกว่า

วันนี้จะมาแนะนำส่วนขยาย (Extensions – เครื่องมือเสริมบราวเซอร์) บน Chrome ที่มีชื่อว่า Toby ค่ะ ใช้งานฟรี กับวลีเด็ดที่เจ้า Toby นำเสนอตัวเองได้น่าสนใจมากเลยทีเดียว คือ Better than Bookmarks หลังจากที่ผู้เขียนได้ลองใช้งาน (Account แบบ Guest) ก็พบว่าการทำงานของเจ้า Toby นั้น ช่างเหมาะสมกับวลีดังกล่าวเสียจริง ๆ โดยเจ้า Toby จะช่วยเราจัดเก็บเว็บไซต์ที่เราใช้งานเป็นประจำทุกวัน บ่อย ๆ ซ้ำ ๆ หรือที่ถูกใจอยากจะเก็บเอาไว้ (ก็เว็บไซต์ต่าง ๆ ที่เรา Bookmark เอาไว้นั้นแหละค่ะ) แยกตามหมวดหมู่ (Collections) ที่เราได้สร้างไว้อย่างมีระเบียบ โดยหากใช้งานเจ้า Toby เมื่อเราเปิด Chrome ขึ้นมา เจ้า Toby จะเปลี่ยนหน้าเริ่มต้นของ Chrome ให้เป็นรูปแบบรายการของเว็บไซต์ต่าง ๆ ที่เราได้บันทึกจัดเก็บไว้ แน่นอน มันช่วยให้การเข้าถึงเว็บไซต์เหล่านั้นสะดวกและง่ายมากยิ่งขึ้น โดยเราไม่ต้องเสียเวลาในการหา หรือป้อนชื่อเว็บไซต์นั้น ๆ ใหม่ทุกครั้ง แต่สามารถคลิกเลือกเว็บไซต์จากรายการเพื่อไปยังเว็บไซต์นั้นได้เลยทันที อย่างผู้เขียนทำหน้าที่เป็น Customer Support ซึ่งต้องดูแลหลาย ๆ ระบบ (Web Application)  จากแต่ก่อน Bookmark ไว้ แต่พอมาใช้เจ้า Toby ก็สบายเลยละคะ User โทรมาสอบถามปัญหาเกี่ยวกับเว็บไซต์ที่ดูแลอยู่เมื่อไหร่ล่ะก็ พร้อมเข้าถึงเว็บไซต์เหล่านั้น (ซึ่งต้องเข้าออกทู๊กกกกกวันนนนน) เพื่อทดสอบ ตอบ แก้ไขปัญหาให้กับ User ได้อย่างทันทีเลยล่ะค่าาาา หรือ User ท่านไหนที่ชอบลืมชื่อเว็บไซต์ที่เราเข้าใช้งานเป็นประจำ ก็แนะนำให้ลองเอาไปใช้ดูนะคะ น่าสนใจมากเลยใช่มั้ยยยยล๊าาา งั้นเรามาติดตั้ง Toby ให้กับ Chrome ของเรากันดีกว่า พร้อมแล้ว ! ลุยยยกันเลยยยยค่ะ! ติดตั้ง Toby ให้ Chrome กันก่อน 1.ไปที่ลิงก์ https://chrome.google.com/webstore/category/extensions ค้นหา Toby และกดปุ่ม Add to Chrome เพื่อเริ่มการติดตั้ง Toby ให้กับ Chrome ค่ะ 2.Chrome จะแสดงกล่องยืนยันการติดตั้ง Toby กดปุ่ม Add extension เพื่อยืนยันการติดตั้ง รอจนกว่าจะสิ้นสุดการติดตั้งนะคะ เมื่อติดตั้งเรียบร้อยแล้ว เราก็ได้เจอกับเจ้า Toby  เสียที หน้าตาก็จะหวานแหวว สีชมพู๊วว ชมพู และจะพบปุ่ม Toby ที่มุมขวาของ Chrome โผล่ขึ้นมาด้วย โดยเจ้า Toby จะ guide การใช้งานให้กับเราซึ่งมี 3 ขั้นตอนที่ง่ายมาก ๆ ดังนี้ค่ะ Create Your First collection. > Give your collection a name. > Drag the tab to the collection. เริ่มใช้งาน Toby กันเลย Create Your First collection สร้างหมวดหมู่ (collection) ที่จะใช้บันทึกจัดเก็บเว็บไซต์ โดยคลิก ปุ่มเครื่องหมายบวก + Add Collection Give your collection a name คลิก  เลือก Edit tittle แล้วทำการแก้ไขชื่อของ Collection ตามที่ต้องการ Drag the tab to the collection ลาก Tab เว็บไซต์ที่เราต้องการ (รายการเว็บไซต์จะมาจากที่เราเข้าใช้งาน) มาใน collection

Read More »

Variables ใน Robot Framework

วันนี้เรามาดูตัวแปร ใน Robot Framework กันดีกว่า ดู ๆ ไปตัวแปรมันก็แปลกดีนะ มาดูกันว่าเป็นไงบ้าง Case Insensitive –> ตัวพิมพ์เล็ก – พิมพ์ใหญ่เป็นตัวเดียวกัน Ignore space –> ไม่สนใจช่องว่าง Ignore underscore –> ไม่แคร์ Underscore 555 มาดูประเภทของตัวแปรกัน ดังรูปจ้า ค่าคงที่ List Dictionary หรือ Json ตามตัวอย่าง มารันดูข้อมูลกันจะเห็นได้ว่ามันจะรันตามลำดับ ที่เราแสดง Log to console ลองดูว่าถ้าเราจะให้แสดง List เฉพาะคำว่า Chotkaew จะทำยังไง ให้มองว่า Thichaluk เป็น index ที่ 0 และ Chotkaew เป็น index ที่ 1 รันดูผลลัพธ์กัน มาลองดูของ dictionary กันบ้าง ให้แสดงค่าของ Thichaluk รันดูผลลัพธ์ ทุกคนคงจะมองเห็นการเข้าถึงข้อมูลแต่ละประเภทกันแล้วใช่มั๊ยค่ะ ต่อไปมาลองสร้าง List กับ Dictionary อย่างง่าย ๆ กัน รูปแบบคำสั่งก็ไปหาดูได้ที่ https://robotframework.org ที่ Libraries –> Builtin ที่ Builtin คลิก View หา Create List กับ Create Dictionary รันดูผลลัพธ์

Read More »

ELK #09 Anomaly Detection (Case Study)

ระบบ PSU Email ให้บริการผู้ใช้ของมหาวิทยาลัยสงขลานครินทร์ ซึ่งมีการใช้งานจากทั่วโลก ทั้งระบบประกอบขึ้นจากคอมพิวเตอร์หลายเครื่อง การจะตรวจสอบ Log เมื่อเกิด Incident ขึ้น อาจจะต้องใช้ระยะเวลานาน และเป็นการยากพอสมควรที่จะเชื่อมโยงความสัมพันธ์ของเหตุการณ์ และสรุปออกมาเป็นรายงานได้ จึงเริ่มใช้ ELK สำหรับรวบรวม Log ของทั้งระบบไว้ที่ส่วนกลาง และพัฒนาต่อยอดเพื่อการตรวจจับความผิดปรกติต่าง ๆ ได้ ในบทความนี้ จะนำเสนอวิธีการใช้ ELK เพื่อตรวจจับ การ Login ที่ผิดปรกติบน PSU Email โดยจะสนใจ ผู้ใช้ที่มีการ Login จากนอกประเทศเป็นหลัก การส่ง Log จาก Server เข้า ELK ที่เครื่อง Server แต่ละเครื่อง กำหนดให้ส่ง Log จาก /etc/rsyslog.d/50-default.conf เข้าไปที่ your.logstash.server:port ตามที่กำหนดไว้ การสร้าง Logstash Filter ที่ Logstash Server Input เพื่อรับข้อมูลจาก syslog ที่ port ที่ต้องการ เช่นในที่นี้เป็น 5516 เป็นต้น Filter ใช้ Grok Plugin เพื่อจับข้อมูล จาก message แบ่งเป็นส่วน ๆ ตามลักษณะ แล้วตั้งชื่อตาม Field ตามต้องการ ในที่นี้คือ description, username, domainname, clientip, actiondate, actiontime เป็นต้น (ตัวที่สำคัญในตอนนี้คือ username และ clientip) Output ตั้งว่าให้ส่งผลไปยัง Elasticsearch ที่ “your.elasticsearch.server” ที่ port 9200 [ตรงนี้มีกระบวนการบางอย่าง ซึ่งค่อยมาลงรายละเอียด] เมื่อมี Log ไหลเข้าสู่ Logstash และ ถูกประมวลผลแล้ว ก็จะเข้าสู่ Elasticsearch แล้ว ก็นำไปใช้งานบน Kibana หลังจากนั้น สามารถ Search ข้อมูล และใส่ Fields ที่สนใจ เช่น Time, Username, geoip.country_name และ description ได้ แล้ว Save เอาไว้ใช้งานต่อ ในที่นี้ ตั้งชื่อว่า squirrelmail-geoip จากนั้น สามารถเอาไปสร้างเป็น Visualization แบบ Coordinate Map ได้ เช่น ดูว่า มีการ Login Success / Failed Login / Sent จากที่ไหนบ้างในโลก จะเห็นได้ว่า ส่วนใหญ่ ใช้งานจากในประเทศไทย (วงกลมสีแดงเข้ม ๆ) ส่วนนอกประเทศ จะเป็นวงสีเหลืองเล็ก ๆ การตรวจหาการใช้งานที่ผิดปรกติ สร้าง Search ใหม่ กรองเฉพาะ ที่มี (exist) Username และ ไม่เป็น N/A และ มี (exist) geoip.country_code และ ไม่ใช่ Thailand แล้ว Save ไว้ใช้งานต่อไป ในที่ตั้งชื่อว่า squirrelmail-geoip-outside-th จากนั้น เอาไปสร้าง Visualization แบบ Vertical Barกำหนดให้Y Axis เป็นจำนวนX Axis เป็น Usernameโดยที่ Group by geoip.country_name และ descriptionก็จะทำให้รู้ว่า ใครบ้างที่ มีการใช้งานนอกประเทศ และ

Read More »

Should Be Equal ใน Robot Framework

วันนี้จะมาทดลองใช้ Should Be Equal (การเปรียบเทียบ) ใน Robot framework กันค่ะ ก่อนจะถึงคำสั่งเปรียบเทียบ เราก็ต้องเขียน Test Case อื่น ๆ กันก่อน งั้นวันนี้จะเขียนแบ่ง Test Case ให้อ่านง่าย ๆ กันไปเลย เพื่อเพื่อน ๆ จะได้นำไปประยุกต์ใช้งานกันได้ค่ะ สิ่งที่ต้องใช้ในวันนี้ คือ Notpad++ หรือ Tool อื่น ๆ ที่เพื่อน ๆ ถนัด วันนี้เราจะใช้ Visual Studio Code กันค่ะ (เพราะเหนื่อยกับการรันผ่าน command line แล้ว) มาเริ่มกันเลยดีกว่า จะเห็นว่า เรามีการตั้งชื่อ Test Case ให้อ่านง่าย เพื่อจะให้รู้ว่าแต่ละขั้นเราทำอะไร ตอนเป็น Report จะได้ดูง่ายเข้าไปอีก ค่อนไปดู Report ตอนท้าย คำสั่งนี้จะตรวจสอบว่าค่าที่ได้ตรงกันมั๊ย จะเห็นว่าเราเขียน Test Case เป็นภาษาไทยได้นะเออ จากรูปเปรียบเทียบค่าจาก xpath ที่ locator h1 ตามคำสั่ง //h1[@class=”main-header”]  เท่ากับ “ROBOT FRAME WORK/” หรือไม่ Locator ที่กล่าวคือตำแหน่งตามรูปข้างบน คราวนี้เราลองปรับให้ ${expect} ไม่ใช่ค่าเดียวกับ locator ที่เราอ้างถึง จะเห็นได้ว่าที่ log console มีการแสดงผลในการเปรียบเทียบว่าไม่เท่ากัน ไปดู Report กันซะหน่อยว่าเป็นยังไง Report ก็ดูง่ายมากเลยเห็นมั๊ยหล่ะ ^_^

Read More »