سؤال

كيف يمكنني تصحيح تطبيق خادم Node.js؟

الآن أنا في الغالب يستخدم تنبيه تصحيح مع تصريحات الطباعة مثل هذا:

sys.puts(sys.inspect(someVariable));

يجب أن يكون هناك طريقة أفضل للتصحيح. وأنا أعلم ذلك جوجل كروم لديه مصحح خط الأوامر. هل هذا المصحح متاح لعدة node.js كذلك؟

هل كانت مفيدة؟

المحلول 3

ال V8. صدر المصحح كجزء من Google أدوات مطور الكروم يمكن استخدامها لتصحيح البرامج النصية node.js. شرح مفصل لكيفية العثور على هذه الأعمال في node.js github wiki..

نصائح أخرى

العقدة المفتش يمكن أن ينقذ اليوم! استخدامه من أي متصفح يدعم Websocket. وبعد نقاط التوقف، المناظرية، LiVeCoding، إلخ ... إنه رائع حقا.

تثبيته مع:

npm install -g node-inspector

ثم اركض:

node-debug app.js

تصحيح

التنميط

  1. node --prof ./app.js
  2. node --prof-process ./the-generated-log-file

heapdumps.

flamegraphs.

اقتفاء أثر

تسجيل

المكتبات التي تخرج معلومات التصحيح

المكتبات التي تعزز معلومات تتبع المكدس

المرجعية

آخر

ميراث

هذه الاستخدامات للعمل ولكن لم تعد تم الحفاظ عليها أو لم تعد قابلة للتطبيق على إصدارات العقدة الحديثة.

العقدة لها خاصة بها بنيت في مؤشر الأخشاب واجهة المستخدم الرسومية اعتبارا من الإصدار 6.3 (باستخدام Devyools Chrome)

Nodes builtin GUI debugger

ببساطة اجتياز علامة المفتشية وسوف يتم تزويدك بعنوان URL للمفتش:

node --inspect server.js

يمكنك أيضا كسر الخط الأول عن طريق المرور --inspect-brk في حين أن.

لفتح نافذة Chrome تلقائيا، استخدم فحص العملية وحدة.

# install inspect-process globally
npm install -g inspect-process

# start the debugger with inspect
inspect script.js

node.js الإصدار 0.3.4+ لديه دعم تصحيح الأخطاء المدمج.

node debug script.js

يدوي: http://nodejs.org/api/debugger.html.

رمز الاستوديو المرئي سيكون خياري لتصحيح الأخطاء. لا النفقات العامة لتثبيت أي أدوات أو npm install أمور. فقط قم بتعيين نقطة البداية في تطبيقك في Package.json و VScode سيقوم تلقائيا بإنشاء ملف تكوين داخل الحل الخاص بك. انها بناء على إلكترون, ، والتي يتم بناء المحررين مثل الذرة.

يعطي رمز VS تجربة تصحيح أخطاء مماثلة كما قد يكون لديك في معالم أخرى مثل vs، كسوف، إلخ.

enter image description here enter image description here

أنا شخصيا استخدام jetbrains webstalm. نظرا لأن JavaScript ide الوحيد الذي وجدته وهو أمر رائع لكلا الواجهة الأمامية والخلفية جافا سكريبت.

إنه يعمل على العديد من نظام التشغيل وله node.js تصحيح الأخطاء المدمجة (بالإضافة إلى طن من الأشياء الأخرى] (http://www.jetbrains.com/webstorm/features/index.html.).

عناصر "قضايا" الخاصة بي الوحيدة نكون كانت:

  1. يبدو أنه مزيد من الموارد الجائعة على نظام التشغيل Mac لم يعد يبدو مشكلة في الإصدار 6.
  2. سيكون من الرائع أن يكون دعم مقتطف (مثل تلك نص سامية 2. - أي نوع "متعة" وانقر "علامة التبويب" لوضعها في وظيفة. راجع Wickynilliams التعليق أدناه - مع القوالب الحية لديك أيضا دعم Snippet.

heenus. هو مشروع بواسطة Adobe Research الذي يتيح لك تصحيح رمز Node.js الخاص بك في محرر المصدر المفتوح اقواس. وبعد لديها بعض الميزات المثيرة للاهتمام مثل تغطية الكود في الوقت الحقيقي، والتفتيش بأثر رجعي وشجرة المكالمات غير المتزامنة.

screenshot

الكثير من الإجابات العظيمة هنا، ولكن أود إضافة رأيي (بناء على كيفية تطور نهجي)

سجلات التصحيح

دعونا نواجهها، نحن جميعا نحب جيدة console.log('Uh oh, if you reached here, you better run.') وأحيانا يعمل هذا رائعا، لذلك إذا كنت متوقعا للتحرك بعيدا جدا عن ذلك على الأقل إضافة بعض Bling إلى سجلاتك تصحيح VisionMedia.

تصحيح الأخطاء التفاعلية

كما هو مفيد لأن تسجيل وحدة التحكم يمكن أن يكون، لتصحيح الاحترام، تحتاج إلى لفة الأكمام الخاصة بك وتتعثر في. اضبط نقاط التوقف، والخطوة من خلال التعليمات البرمجية، وتفقد النطاقات والمتغيرات لمعرفة ما يسبب هذا السلوك الغريب. كما ذكر آخرون، العقدة المفتش حقا هي الركبتين النحل. يفعل كل ما يمكنك القيام به مع مصحح الأخطاء المدمج، ولكن باستخدام واجهة Devyools Chrome المألوفة. إذا، مثلي، أنت تستخدم العاصفة, ، ومن بعد هنا هو دليل مفيد لتصحيح الأخطاء من هناك.

آثار المكدس

بشكل افتراضي، لا يمكننا تتبع سلسلة من العمليات عبر دورات مختلفة من حلقة الحدث (القراد). للحصول على هذا إلقاء نظرة على جون الطويل (ولكن ليس في الإنتاج!).

تسريبات الذاكرة

مع node.js، يمكننا الحصول على عملية الخادم المتوقع أن تبقى حتى وقت طويل. ماذا تفعل إذا كنت تعتقد أنه قد انتشر بعض التسريبات سيئة؟ يستخدم heapdump. و Chrome Devyools لمقارنة بعض اللقطات ومعرفة ما يتغير.


لبعض المقالات المفيدة، تحقق من

إذا كنت ترغب في مشاهدة الفيديو (الفيديوات) إذن

مهما كانت المسار الذي تختاره، تأكد من أنك تفهم كيف تقوم بتصحيح الأخطاء

enter image description here

إنه شيء مؤلم
أن ننظر إلى مشكلتك الخاصة ومعرفة
أن أنت نفسك ولا أحد آخر جعله

sophocles، ajax.

أدوات Node.js لاستوديو Visual 2012 أو 2013 يتضمن مصححا. نظرة عامة هنا تتضمن الدول "أدوات node.js for Visual Studio دعما كاملا لتصحيح تطبيقات العقدة.". أن تكون جديدا على node.js، ولكن وجود خلفية في .NET، لقد وجدت أن هذا أضف إلى أن تكون طريقة رائعة لتصحيح تطبيقات Node.js.

رمز الاستوديو المرئي لديه حقا node.js node.js دعم تصحيح الأخطاء. إنه مجاني ومصدر مفتوح ومصدر ويعمل على نظام Linux و OS X و Windows.

يمكنك حتى التصحيح مهام المخروط والجلد, ، يجب أن تحتاج إلى ...

كتبت نهجا مختلفا لتصحيح رمز Node.js المستقر وبسيط للغاية. إنه متاح في https://github.com/sa/iron-node..

Enter image description here

المصحح البصري المرئي منصة OpenSource.

تثبيت:

npm install iron-node -g;

تصحيح:

iron-node yourscript.js;

إذا كنت تستخدم ذرة IDE., ، يمكنك تثبيت node-debugger صفقة.

باستخدام الإصدار Chrome 67.0.3396.62 (+)

  1. تشغيل node app.

العقدة - BRK = 0.0.0.0: 9229 Server.js (خادم JS Filename)

  1. تصفح التطبيق الخاص بك في Chrome Eg "LocalHost: Port"
  2. فتح devyools.
  3. انقر أيقونة العقدة بجانب أيقونة الجهاز الاستجابة.

enter image description here

ستكون هناك نافذة Devyools أخرى ستبلغ خصيصا للحصول على تطبيق Node Debugging.

enter image description here

لقد أنشأت أداة صغيرة أنيقة تسمى pry.js. التي يمكن أن تساعدك.

ضع عبارة بسيطة في مكان ما في التعليمات البرمجية الخاصة بك، وتشغيل البرنامج النصي الخاص بك بشكل طبيعي وسيقوم العقدة بتوقف الترابط الحالي الذي يمنحك الوصول إلى جميع المتغيرات والوظائف الخاصة بك. عرض / تحرير / حذفها في الإرادة!

pry = require('pryjs')

class FizzBuzz

  run: ->
    for i in [1..100]
      output = ''
      eval(pry.it) # magic
      output += "Fizz" if i % 3 is 0
      output += "Buzz" if i % 5 is 0
      console.log output || i

  bar: ->
    10

fizz = new FizzBuzz()
fizz.run()

هناك سطر الأوامر المدمج مصحح الأخطاء العميل داخل node.js. Cloud 9 IDE لديها أيضا لطيفة جميلة (مرئية) مصحح الأخطاء.

رمز الاستوديو المرئي سوف تعمل من أجلنا في تصحيح الأخطاء.

أنا وضعت معا قصيرة node.js تصحيح الأخطاء التمهيدي على استخدام العقدة المفتش بالنسبة لأولئك الذين ليسوا متأكدين من أين تبدأ.

استخدام العاصفة Web! إنه مثالي لتصحيح تطبيقات Node.js. لديها مصحح مدمج. تحقق من المستندات هنا: https://www.jetbrains.com/help/webstorm 15.1/running-and-debugging-node-js.html.

إذا كنت بحاجة إلى مكتبة تسجيل قوية لعدة node.js، Tracer https://github.com/baryon/Tracer. هو اختيار أفضل.

تنتج رسائل السجل مع طابع زمني أو اسم الملف أو اسم الأسلوب أو رقم السطر أو المسار أو مكدس المكالمة، وحدة التحكم بالألوان الدعم، وقاعدة بيانات الدعم، ملف، نقل دفق بسهولة. أنا المؤلف.

على افتراض أنك يحتوي على مفتش عقدة مثبتا على جهاز الكمبيوتر الخاص بك (إن لم يكن، اكتب فقط "NPM Installation-Grown-Infcector") عليك فقط تشغيل:

node-inspector & node --debug-brk scriptFileName.js

ولصق URI من سطر الأوامر في متصفح WebKit (Chrome / Safari).

بدء عملية العقدة الخاصة بك مع --فحص علم.

node --inspect index.js

ثم فتح chrome://inspect في الكروم. انقر فوق "فتح Devyools المخصص" رابط أو تثبيت هذه تمديد Chrome لفتح Chrome Devyools بسهولة.

لمزيد من المعلومات تشير إلى هذه حلقة الوصل

هناك العديد من الاحتمالات ...

غالبا ما يتم تنفيذ دعم التصحيح باستخدام V8 بروتوكول تصحيح الأخطاء أو الأحدث بروتوكول تصحيح الكروم.

هناك المصدر المفتوح الجديد nodeclipse. المشروع (كمساعد Eclipse أو إينيد الاستوديو):

أصبح nodeclipse # 1 في Eclipse Top 10 إضافات جديدة لعام 2013. وبعد يستخدم تعديل V8. مصحح الأخطاء (من أدوات مطور جوجل كروم ل Java).

NodeClipse هو برنامج مجاني مفتوح المصدر صدر في بداية كل شهر.

Intellij. يعمل بشكل رائع لعدة node.js.

بالإضافة إلى ذلك، يدعم Intellij "مساعدة التعليمات البرمجية" جيدا.

ال netbeans. كان لدى IDE دعم node.js منذ ذلك الحين الإصدار 8.1.:

<...>

ميزة جديدة تبرز

node.js تطوير التطبيق

  • New Node.js معالج المشروع
  • New Node.js Ibase Wizard
  • محدم جافا سكريبت المحرر
  • دعم جديد لتشغيل تطبيقات node.js
  • دعم جديد لتصحيح تطبيقات Node.js.

<...>

مراجع إضافية:

  1. netbeans wiki / newandnoteworthynb81.
  2. Node.js Express App في Netbeans IDE، Geertjan-Oracle.

استخدام هذه الأوامر

DEBUG_LEVEL=all node file.js
DEBUG=* node file.js
node file.js --inspect

طريقة سريعة وقذرة لتصحيح البرامج النصية Node.js الصغيرة مع المفضلة لديك مصحح الأخطاء سيكون لاستخدام browserify.. وبعد لاحظ أن هذا النهج لا يعمل مع أي تطبيقات تتطلب مكتبات الإدخال / الإخراج الأصلية، ولكنها جيدة بما يكفي لمعظم النصوص الصغيرة.

$ npm install -g browserify

الآن نقل كل ما تبذلونه var x = requires('x') يدعو إلى أ requires.js ملف وتشغيل:

$ browserify requires.js -s window -o bundle.js

(الجانب السلبي هنا هو أنك إما عليك التحرك أو التعليق requires في جميع ملفاتك.)

تشمل bundle.js في ملف HTML مثل ذلك:

<script type="text/javascript" src="bundle.js"></script>

الآن قم بتحميل الملف في المتصفح الخاص بك واضغط F12 وفيولا: تصحيح في المتصفح.

NDB هي تجربة تصحيح أخطاء محسنة لعدة node.js، تم تمكينها بواسطة Chrome DevTools

https://github.com/googlechromelabs/ndb.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top