วิธีการแก้ไขปัญหาการตรวจสอบ และบันทึกการตัดสินค้าจากคลังสำหรับเคาน์เตอร์วัดประสิทธิภาพใน.NET Framework 2.0

การแปลบทความ การแปลบทความ
หมายเลขบทความ (Article ID): 922775 - ผลิตภัณฑ์ที่เกี่ยวข้องในบทความนี้
ขยายทั้งหมด | ยุบทั้งหมด

เนื้อหาบนหน้านี้

สรุป

บทความนี้อธิบายวิธีการใช้เคาน์เตอร์วัดประสิทธิภาพการใช้งานจริง (CLR) ภาษาทั่วไปและวิธีการแก้ไขปัญหาที่พบที่เกิดขึ้นเมื่อคุณใช้เคาน์เตอร์วัดประสิทธิภาพในกรอบงาน Microsoft .NET 2.0 การตรวจสอบเคาน์เตอร์วัดประสิทธิภาพการทำงานบนคอมพิวเตอร์ระยะไกล คุณต้องเป็นผู้ดูแลระบบบนคอมพิวเตอร์ระยะไกล ถ้าคอมพิวเตอร์ระยะไกลใช้ Microsoft Windows Server 2003 คุณต้องอยู่ ในกลุ่มผู้ใช้ล็อกประสิทธิภาพ (PLU) หรือกลุ่มผู้ใช้ในการตรวจสอบประสิทธิภาพการทำงาน (PMU) การล็อกเคาน์เตอร์วัดประสิทธิภาพ CLR กำหนดค่าผู้ใช้สามารถเรียกใช้เป็นผู้ใช้ที่มีสิทธิ์ระดับผู้ดูแล บทความนี้กล่าวถึงปัญหาที่เกี่ยวข้องกับการตรวจสอบ หรือการเข้าสู่ระบบในเคาน์เตอร์วัดประสิทธิภาพ CLR บนคอมพิวเตอร์ระยะไกล

บทนำ

CLR ส่งรหัสที่ได้รับการจัดการร่วมกับบริการเช่นต่อไปนี้:
  • การรวมกันของภาษาหว่าง
  • ความปลอดภัยการเข้ารหัส
  • การจัดการอายุการใช้งานวัตถุ
  • การจัดการทรัพยากร
  • ชนิดที่ปลอดภัย
  • เธรด pre-emptive
  • บริการข้อมูลเมตา (ชนิด reflection)
  • ดีบักและสนับสนุนการรวบรวมสถานะ
CLR มีเคาน์เตอร์วัดประสิทธิภาพการทำงานที่คุณสามารถใช้ในการติดตามการทำงานของโปรแกรมประยุกต์ คุณสามารถใช้การตรวจสอบประสิทธิภาพ (Perfmon) เพื่อสร้างเคาน์เตอร์วัดประสิทธิภาพการทำงานที่กำหนดเอง คุณสามารถตรวจสอบประสิทธิภาพการทำงานของระบบได้ โดยตรวจดูค่าที่เคาน์เตอร์วัดประสิทธิภาพการทำงานที่ส่งคืน

ข้อมูลเพิ่มเติม

ปัญหาที่ทราบต่อไปนี้อาจเกิดขึ้นเมื่อคุณใช้เคาน์เตอร์วัดประสิทธิภาพ CLR ใน.NET Framework 2.0

คุณไม่สามารถตรวจสอบเคาน์เตอร์วัดประสิทธิภาพของ CLR ได้จากระยะไกล

เมื่อคุณพยายามที่จะตรวจสอบเคาน์เตอร์วัดประสิทธิภาพ CLR บนคอมพิวเตอร์ระยะไกลใน Perfmon คุณได้รับข้อความแสดงข้อผิดพลาดที่คล้ายกับต่อไปนี้:
ไม่สามารถเชื่อมต่อเครื่อง
เมื่อต้องการแก้ไขปัญหานี้ ให้ใช้วิธีการอย่างใดอย่างหนึ่งต่อไปนี้

วิธีที่ 1: ตรวจสอบว่า บริการรีจิสทรีระยะไกลกำลังรันอยู่บนคอมพิวเตอร์ระยะไกล

เมื่อปัญหานี้เกิดขึ้น ตรวจสอบว่า บริการรีจิสทรีระยะไกลกำลังรันอยู่บนคอมพิวเตอร์ระยะไกล โดยให้ทำตามขั้นตอนต่อไปนี้::
  1. คลิกเริ่มการทำงานคลิกเรียกใช้ประเภท:cmdแล้ว คลิกตกลง.
  2. ที่พรอมต์คำสั่ง พิมพ์:tasklist - svcแล้ว กด ENTER

    ตรวจสอบว่า โฮสต์กระบวนการ Svchost.exe ที่กำลังทำงานที่มีRemoteRegistryในการบริการคอลัมน์ หากไม่ได้รันการให้บริการ ไปที่ขั้นตอนที่ 3
  3. ที่พรอมต์คำสั่ง พิมพ์:เริ่มต้นสุทธิ RemoteRegistryแล้ว กด ENTER

วิธีที่ 2: ตรวจสอบว่า คุณมีสิทธิ์ที่จำเป็น

การตรวจสอบเคาน์เตอร์วัดประสิทธิภาพ CLR บนคอมพิวเตอร์ระยะไกล มีเงื่อนไขใด ๆ ต่อไปนี้ต้องเป็นจริง:
  • คุณต้องเป็นสมาชิกของกลุ่มผู้ดูแลระบบบนคอมพิวเตอร์ระยะไกล
  • ถ้าคอมพิวเตอร์ระยะไกลกำลังเรียกใช้ Windows Server 2003 คุณต้องเป็นสมาชิกของกลุ่มผู้ใช้การตรวจสอบประสิทธิภาพการทำงานการตรวจสอบเคาน์เตอร์วัดประสิทธิภาพ
  • ถ้าคอมพิวเตอร์ระยะไกลกำลังเรียกใช้ Windows Server 2003 คุณต้องเป็นสมาชิกของกลุ่มผู้ใช้ล็อกประสิทธิภาพให้เคาน์เตอร์วัดประสิทธิภาพในการเข้าสู่ระบบ นอกจากนี้ คุณต้องใช้การเรียกใช้เป็นคำสั่งการตั้งค่ากระบวนการเข้าสู่ระบบให้ทำงานภาย ใต้กลุ่มผู้ดูแล หรือภาย ใต้กลุ่มผู้ใช้ล็อกประสิทธิภาพการทำงาน

คุณไม่สามารถดูเคาน์เตอร์วัดประสิทธิภาพ CLR ได้ถึงแม้ว่าคุณสามารถเชื่อมต่อกับคอมพิวเตอร์ระยะไกล

ถ้าเซิร์ฟเวอร์ที่ใช้ Windows server 2003 คอมพิวเตอร์ระยะไกลกำลังทำงาน Microsoft .NET Framework 1.1 Service Pack 1 (SP1), ใช้โปรแกรมแก้ไขด่วนที่อธิบายไว้ในบทความฐานความรู้ของ Microsoft ต่อไปนี้:
924421การแก้ไข: deteriorates ประสิทธิภาพการทำงานของโปรแกรมประยุกต์หรือคอมพิวเตอร์หยุดการตอบสนองเมื่อคุณเรียกใช้โปรแกรมประยุกต์ที่ใช้.NET Framework 1.1 Service Pack 1 บนคอมพิวเตอร์ที่ใช้ Windows 2003

คุณได้รับข้อความแสดงข้อผิดพลาด "ACCESS_DENIED" เมื่อคุณพยายามเริ่มการบันทึกเคาน์เตอร์วัดประสิทธิภาพ CLR

เมื่อคุณพยายามเริ่มการทำงานการเข้าสู่ระบบเคาน์เตอร์วัดประสิทธิภาพ CLR คุณอาจได้รับข้อความแสดงข้อผิดพลาดที่คล้ายกับต่อไปนี้:
รหัสข้อผิดพลาด 5 (ACCESS_DENIED)
ไม่สามารถเปิด shim ฐานข้อมูลรุ่นคีย์รีจิสทรี - v2.0.50727.00000 กระบวนงานที่เปิดสำหรับการบริการ ".NETFramework" ใน DLL "D:\WINNT\system32\mscoree.dll" ล้มเหลว ข้อมูลประสิทธิภาพการทำงานสำหรับการบริการนี้จะไม่พร้อมใช้งาน รหัสสถานะการส่งคืนถูก DWORD แรกในข้อมูลที่แนบมา รหัสสถานะคือ 5 (ACCESS_DENIED)
ปัญหานี้เกิดขึ้นเนื่องจากขั้นตอนแรกในการโหลดตัวนับประสิทธิภาพ CLR DLL (Corperfmonext.dll) สร้างเหตุการณ์ที่มีชื่อสำหรับการสื่อสารการสื่อสาร Inter-Process (IPC) เหตุการณ์ที่มีชื่อถูกสร้างขึ้นใช้การอนุญาตสำหรับ ID ผู้ใช้ของกระบวนการ

ตัวอย่างเช่น ผู้ใช้ที่มีสิทธิ์ระดับผู้ดูแลเริ่ม Perfmon จากนั้น ผู้ใช้เริ่มต้นการตรวจสอบเคาน์เตอร์วัดประสิทธิภาพ CLR เหตุการณ์ที่มีชื่อถูกสร้าง โดยใช้สิทธิ์ที่อนุญาตให้กับกลุ่มผู้ดูแล ในสถานการณ์สมมตินี้ ผู้ใช้ได้รับข้อความของข้อผิดพลาดหากผู้ใช้พยายามที่จะเริ่มการทำงานการเข้าสู่ระบบเคาน์เตอร์วัดประสิทธิภาพ CLR ปัญหานี้เกิดขึ้นเนื่องจากบริการการ "แจ้งเตือนประสิทธิภาพแฟ้มบันทึกและเกี่ยวกับ" ไม่สามารถเข้าถึงเหตุการณ์ที่มีชื่อ

เมื่อต้องการแก้ไขปัญหานี้ โหลดแฟ้ม Corperfmonext.dll ในบริการการ "แจ้งเตือนประสิทธิภาพแฟ้มบันทึกและเกี่ยวกับ" ก่อน โดยให้ทำตามขั้นตอนต่อไปนี้::
  1. คลิกเริ่มการทำงานคลิกเรียกใช้ประเภท:cmdแล้ว คลิกตกลง.
  2. ที่พรอมต์คำสั่ง พิมพ์:tasklist -m corperfmonext.dllแล้ว กด ENTER หมายเหตุกระบวนการแต่ละที่อยู่ในรายการ
  3. ที่พรอมต์คำสั่ง พิมพ์:taskmgrแล้ว กด ENTER
  4. ในการกระบวนการแท็บ คลิแต่ละขั้นตอนที่คุณบันทึกไว้ในขั้นตอนที่ 2 และคลิกกระบวนการสิ้นสุด.
  5. คลิกเริ่มการทำงานคลิกเรียกใช้ประเภท:perfmonแล้ว คลิกตกลง.
  6. ขยายแฟ้มบันทึกประสิทธิภาพและการแจ้งเตือนแล้ว คลิกแฟ้มบันทึกการตรวจนับ.
  7. คลิกขวาที่บริการที่คุณต้อง การใช้ แล้ว คลิกเริ่มการทำงาน.
หมายเหตุ:ปัญหานี้ถูกกำหนดเวลาถูกแก้ไขใน.NET Framework รุ่นในอนาคต

คุณไม่สามารถตรวจสอบโปรแกรมได้รับการจัดการ 32 บิตใน Perfmon รุ่น 64 บิต

ปัญหานี้เกิดขึ้นเนื่องจากแฟ้ม Corperfmonext.dll รุ่น 64 บิตระบุการประมวลผล 64 บิตเท่านั้น นอกจากนี้ รุ่น 32 บิตของแฟ้ม Corperfmonext.dll ระบุกระบวนการแบบ 32 บิตเท่านั้น เมื่อต้องดูโปรแกรมที่ได้รับการจัดการ 32 บิตในคอมพิวเตอร์ 64 บิต คลิกเริ่มการทำงานคลิกเรียกใช้ประเภท:SystemRoot%\SysWOW64\perfmon.exeแล้ว คลิกตกลง.

หมายเหตุ:ปัญหานี้ถูกกำหนดเวลาถูกแก้ไขใน.NET Framework รุ่นในอนาคต

perfmon ไม่พบเมื่อโปรแกรมได้รับการจัดการการเริ่มระบบใหม่บนคอมพิวเตอร์ระยะไกล

ปัญหานี้เกิดขึ้นเนื่องจากบริการรีจิสทรีระยะไกลทำงานภายใต้บัญชีบริการภายใน บัญชีบริการเฉพาะที่ไม่ได้เป็นสมาชิกผู้ใช้การตรวจสอบประสิทธิภาพการทำงานกลุ่มหรือยังผู้ใช้ล็อกประสิทธิภาพการทำงานกลุ่ม ดังนั้น บัญชีบริการในระบบไม่สามารถเข้าถึงบล็อก IPC ของตัวนับประสิทธิภาพ CLR nevertheless คุณสามารถตรวจสอบเคาน์เตอร์วัดประสิทธิภาพ CLR เนื่องจากบริการรีจิสทรีระยะไกล impersonates ผู้ใช้เริ่มต้นการตรวจสอบ

อย่างไรก็ตาม ถ้ากระบวนการตรวจสอบรีสตาร์ต บล็อก IPC ใหม่จะถูกเปิด โดยมีเธรดสอื่น ๆ ในบริการของรีจิสทรีระยะไกล เธรดนี้สอื่น ๆ ไม่ impersonate ผู้ใช้ในไคลเอนต์ ดังนั้น เธรดไม่สามารถเข้าถึงบล็อก IPC ของตัวนับประสิทธิภาพ CLR เมื่อต้องการแก้ไขปัญหานี้ เริ่มต้นการตรวจการตรวจนับสอบประสิทธิภาพจากไคลเอ็นต์

เคาน์เตอร์วัดประสิทธิภาพ CLR หลายปรากฏขึ้นที่มีชื่อที่มีลักษณะ " W3wp # 1 "

เมื่อกระบวนการสามารถ ASP.NET หลายรัน เคาน์เตอร์วัดประสิทธิภาพ CLR ที่มีชื่อที่มีลักษณะ " W3wp #1 "หรือ" W3sp # 2 " อาจปรากฏขึ้น ใน.NET Framework 2.0 ตัวนับที่มีชื่อหมายเลขกระบวนการเพิ่มไปวัตถุประสิทธิภาพของหน่วยความจำของ CLR .NET ตัวนับนี้แสดงหมายเลขกระบวนการสำหรับอินสแตนซ์ คุณสามารถใช้ตัวนับนี้เพื่อดูว่าตัวนับประสิทธิภาพ CLR ที่เกี่ยวข้องกับกระบวนการ

ถ้าคุณมองไม่เห็นตัวนับที่มีชื่อหมายเลขกระบวนการภายใต้หน่วยความจำของ CLR .NETสัญลักษณ์ของตัวนับประสิทธิภาพอาจไม่สามารถติดตั้งอย่างถูกต้องได้ เมื่อต้องการแก้ปัญหานี้ ให้ทำตามขั้นตอนต่อไปนี้:
  1. คลิกเริ่มการทำงานคลิกเรียกใช้ประเภท:cmdแล้ว คลิกตกลง.
  2. ที่พรอมต์คำสั่ง พิมพ์:.NetFramework unlodctrแล้ว กด ENTER
  3. ใช้แบบซีดีคำสั่งเพื่อเปลี่ยนแปลงไปยังโฟลเดอร์ \Microsoft.Net\Framework\v2.0.50727
  4. ที่พรอมต์คำสั่ง พิมพ์:lodctr corperfmonsymbols.iniแล้ว กด ENTER

คุณสมบัติ

หมายเลขบทความ (Article ID): 922775 - รีวิวครั้งสุดท้าย: 20 ตุลาคม 2553 - Revision: 2.0
ใช้กับ
  • Microsoft .NET Framework 2.0
Keywords: 
kbregistry kbperformancetool kbperfmon kbmsg kbinput kbfaq kbtshoot kbprb kbmt KB922775 KbMtth
แปลโดยคอมพิวเตอร์
ข้อมูลสำคัญ: บทความนี้แปลโดยซอฟต์แวร์การแปลด้วยคอมพิวเตอร์ของ Microsoft แทนที่จะเป็นนักแปลที่เป็นบุคคล Microsoft มีบทความที่แปลโดยนักแปลและบทความที่แปลด้วยคอมพิวเตอร์ เพื่อให้คุณสามารถเข้าถึงบทความทั้งหมดในฐานความรู้ของเรา ในภาษาของคุณเอง อย่างไรก็ตาม บทความที่แปลด้วยคอมพิวเตอร์นั้นอาจมีข้อบกพร่อง โดยอาจมีข้อผิดพลาดในคำศัพท์ รูปแบบการใช้ภาษาและไวยากรณ์ เช่นเดียวกับกรณีที่ชาวต่างชาติพูดผิดเมื่อพูดภาษาของคุณ Microsoft ไม่มีส่วนรับผิดชอบต่อความคลาดเคลื่อน ความผิดพลาดหรือความเสียหายที่เกิดจากการแปลเนื้อหาผิดพลาด หรือการใช้บทแปลของลูกค้า และ Microsoft มีการปรับปรุงซอฟต์แวร์การแปลด้วยคอมพิวเตอร์อยู่เป็นประจำ
ต่อไปนี้เป็นฉบับภาษาอังกฤษของบทความนี้:922775

ให้ข้อเสนอแนะ

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com