การแก้ปัญหาขณะติดตั้ง PHP Agent ของ Newrelic by

5
Sep
0

วันก่อนผมเจอปัญหา process newrelic ส่วนของ PHP Monitoring ไม่ทำงาน ไม่มี Process สร้างขึ้นมาเลย และพอไปดู log ก็พบ error ดังนี้

errno=ECONNREFUSED. Failed to connect to the newrelic-daemon

ตอนสั่ง start newrelic PHP Agent แล้วปรากฏว่ารันไม่ขึ้น ซึ่งไม่เคยเจอปัญหานี้มาก่อน เลยไปค้นหาวิธีแก้ พบว่ามีทางแก้สองแบบ

แบบแรก

แก้ไขไฟล์ 20-newrelic.ini จาก

newrelic.daemon.port = "/tmp/.newrelic.sock"

เป็น

newrelic.daemon.port = "@newrelic-daemon"

แล้วสั่ง


service php5-fpm restart
service newrelic-daemon restart

แต่ผมลองแล้วไม่ได้ผล เลยต้องหาวิธีใหม่ได้แบบที่สองคือ

แบบที่สอง

1. พิมพ์ 

getent group newrelic

จะได้ผลลัพธ์ประมาณ newrelic:x:GroupID: ออกมา ให้จำค่า GroupID ไว้สำหรับใช้ต่อไป

2. แก้ไขไฟล์ /etc/sysctl.conf โดยเพิ่ม ข้อมูลดังนี้เข้าไป

fs.proc_can_see_other_uid = 0
fs.proc_super_gid = GroupID

ข้อควรระวังคือ fs.proc_super_gid สามารถใส่ GroupID ได้เพียงอันเดียว ถ้ามี fs.proc_super_gid อยู่ก่อนแล้วให้คุณสร้าง group ใหม่ขึ้นมาแล้วใส่ users ที่ต้องการใช้งานเข้าไปใน group ให้ครบทุก user แล้วใช้ group ใหม่นั้นแทนไปเลย แต่ถ้าไม่เคยสั่ง fs.proc_super_gid มาก่อนก็ไม่ต้องสนใจส่วนนี้

3. 

sysctl -p

4. 

service php5-fpm restart
service newrelic-daemon restart

5. เสร็จเรียบร้อย

[UNITY] [Editor] เทคนิคการเขียน Editor ภาค 3 by

2
Sep
0

[UNITY] [Editor] เทคนิคการเขียน Editor ภาค 3

จากคราวที่แล้ว เรื่อง Validate Function ของ MenuItem วันนี้เราจะมาสอนเรื่อง Hot Key ครับ

รู้หมือไร่?? เราสามารถกำหนด Hot Key ให้ MenuItem ของเราได้ เพื่อที่จะได้เรียกใช้ได้ง่ายๆครับ วิธีใช้ก็ดังนี้เลยครับ

[MenuItem("Test/Menu1", false, 1)]
static void Menu1() { }
[MenuItem("Test/Menu2", false, 1)]
static void Menu2() { }
[MenuItem("Test/Menu3", false, 51)]
static void Menu3() { }
[MenuItem("Test/Menu4", false, 101)]
static void Menu4()
{
Selection.activeGameObject.name = "Test";
}
[MenuItem("Test/Menu4", true, 101)]
static bool Menu4Validator()
{
return Selection.activeGameObject != null;
}

นี่คือ code ของคราวที่แล้ว แล้วถ้าเราอยากให้ Menu4 นั้นมี Hot Key ก็ให้แก้พารามิเตอร์ตัวแรก ของ MenuItem
ซึ่งมี supported keys อยู่ดังนี้ครับ

% – CTRL on Windows / CMD on OSX
# – Shift
& – Alt
LEFT/RIGHT/UP/DOWN – Arrow keys
F1…F2 – F keys
HOME, END, PGUP, PGDN

เมื่อเราจะใส่ก็ใช้ประมาณนี้นะครับ

[MenuItem("Test/Menu4 %x", false, 101)]
static void Menu4()
{
Selection.activeGameObject.name = "Test";
}
[MenuItem("Test/Menu4 %x", true, 101)]
static bool Menu4Validator()
{
return Selection.activeGameObject != null;
}

จะได้ผลลัพท์ดังรูป
1

สังเกตุ1: จะต้อง เว้นวรรคก่อนใส่สัญลักษณ์ Hot Key เสมอนะครับ
สังเกตุ2: ถ้ามี Validate Function จะต้องแก้พารามิเตอร์ตัวแรกให้เหมือนกันนะครับ

เราสามารถใส่ %#&x เพื่อแทน Hot Key Ctrl+Alt+Shift+x ได้ครับ

ก็จบกันไปแล้วนะครับสำหรับการแนะนำ Feature ต่างๆของ UnityEditor ครับ
แต่จริงๆแล้ว UnityEditor ยังทำอะไรๆได้อีกมาก ถ้าใครอยากรู้มากกว่านี้ไปศึกษาดูได้ ที่นี่ ครับ

[C#] วิธีการ Overload ตัว Operator (+ – * / > = <= == !=) by

31
Aug
0

เนื่องจากได้เขียน Class ค่าเงินขึ้นมา ซึ่งทำไว้รองรับปริมาณหน่วยเงินจำนวนมากๆ ทำให้ต้องมีการเขียน Overload พวกตัวคำนวน ตัวเปรียบเทียบทั้งหลายขึ้นมาใหม่ เพราะค่าของค่าเงินไม่ได้เก็บไว้ในตัวแปรเพียงตัวเดียว วิธีการ Overload ก็ไม่ยาก ตัวอย่างดังนี้ฮะ ( Currency เป็นชื่อ Class ใหม่)

Overload ตัวคำนวน +, -, *, /

public static Currency operator +(Currency c1, Currency c2)
{
Currency cResult = new Currency();
/**
คำนวนค่า
*/
return cResult; //ส่งค่ากลับ
}

Overload ตัวเปรียบเทียบ >, <,  >=, <=, ==, !=

public static Currency operator >(Currency c1, Currency c2)
{
if (/* เงื่อนไขใหม่ที่เปรียบเทียบค่า */)
return true;
else
return false;
}

ง่ายๆเท่านี้แหละครับ

แค่ต่อเน็ตก็ไดคัทฉากหลังภาพออกได้ง่ายจัง by

31
Aug
0

ไม่มีโปรแกรมก็ไม่เป็นไร เพราะเดี๋ยวนี้ทำออนไลน์ได้แล้ว ง่ายด้วย!!

ตัดพื้นหลังรูปนั้นช่างยุ่งยาก แถมเสียเวลา วันนี้อยากทำง่ายๆ สามารถทำได้โดยเข้าไปที่ เว็บไซต์

EDIT PHOTO FOR FREE

เปิดเข้ามาจะเจอหน้าจอ สองจอแบบนี้

cut001

เลือกรูปที่จะตัดเข้ามาเลย

cut002

อยากได้ชิ้นไหน เอาสีเหลืองล้อมไว้

cut003

ปุ่มสีเขียวกับสีแดง อันนี้สำคัญมาก เอาไปแต้ม อันไหนเอา(เป็น foreground) เอาสีเขียวแต้ม (แต้มๆพอ ไม่ต้องระบาย) ตรงไหนไม่เอา ทาสีแดง

ปุ่มสีเขียวกับสีแดง อันนี้สำคัญมาก เอาไปแต้ม อันไหนเอา(เป็น foreground) เอาสีเขียวแต้ม (แต้มๆพอ ไม่ต้องระบาย)
ตรงไหนไม่เอา ทาสีแดง

จากนั้นกดปุ่มสามเหลี่ยมตรงกลางเพื่อคอนเวิร์ทรูป จะมีรูปที่ตัดฉากหลังเสร็จแล้ว ปรากฎออกมา!!!!

จากนั้นกดปุ่มสามเหลี่ยมตรงกลางเพื่อคอนเวิร์ทรูป
จะมีรูปที่ตัดฉากหลังเสร็จแล้ว ปรากฎออกมา!!!!

ดาวน์โหลดลงเครื่องเอามาใช้เลย

download เก็บมาใช้เลยจ้า โดยรูปจะ ตั้งค่าเป็น png ตัดฉากหลังเรียบร้อย

download เก็บมาใช้เลยจ้า โดยรูปจะ ตั้งค่าเป็น png
ตัดฉากหลังเรียบร้อย

จะได้รูป png ตัดฉากหลังเรียบร้อย

ง่ายๆ จ้า

สอนวาดลงสีผลึกน้ำแข็งในPS by

30
Aug
0

1.เริ่มแรกสร้างไฟล์งานขึ่นมา จากนั้นให้วาดฟรอมผลึกน้ำแข็งตามความชอบ
01

2.จากนั้นกดสร้าง layer ใหม่ เลือกสีน้ำเงินเข้มระบายให้เต็มพื้นที่ในเส้นตามภาพ
02

3.สร้าง layer เพิ่มอีก วาดผิวหน้าของผลึกน้ำแข็งด้วยสีฟ้าแบบนี้
03

4.จากlayerเดิมให้กดปุ่ม (W)Selection Tool และตื่กที่ภาพน้ำแข็งจนขึ้นรอยปะ และกดปุ่ม (G)Gradient Tool เลือกสีขาวและลากลงจะได้ไล่สีตามภาพ
05

5.กลับไปที่ layer พื้นสีน้ำเงินอีกครั้งเลือก (W)Selection Tool >> (G)Gradient Tool เลือกสีฟ้าสดๆลากลงเผื่อไล่สีตามภาพ
05

6.สร้าง layer เพิ่มวาดสีขาวบริเวณขอบเพื่อทำแสงสะท้อน ตามภาพ
06

7.สุดท้ายสร้าง layer เพิ่มไว้่บนสุดปรับเป็นโหมด Overlay และใช้ (G)Gradient Tool ใช้สีฟ้าสดและลากลงก็เป็นอันเสร็จ
07