flash مكالمة - راجع تتبع()الفلاش عند التشغيل في المتصفح





هواوي الرنين (9)


تحقق من MonsterDebugger De Monster. يمكنك تصحيح كائنات التتبع والتتبعات وسلاسل العرض في تطبيق AIR رائع. ممتعة جدا للاستخدام. وانها مفتوحة المصدر!

http://demonsterdebugger.com/

يمكنك أيضًا تكوين Flash و Flex للكتابة إلى ملف سجل. تحقق من كيفية القيام بذلك هنا:

http://livedocs.adobe.com/flex/3/html/help.html?content=logging_04.html

لقد كنت أستخدم "مونستر" مؤخرًا ، لكنني اعتدت أن يكون لديّ اسم مستعار يشغل "ذيل" unix في ملف flashlog الذي من شأنه أن يمنحني بالفعل نافذة تسجيل لـ "in browser" tracing:

alias flashlog='tail -f /PATH/TO/flashlog.txt'

أو إذا كان لديك عارض سجل (مثل Console على Mac OS) ، يمكنك عرض السجل هناك. السبب الوحيد الذي أقترح هذه الخيارات هو أن FlashTracer "تحطم" جميلة ؛)

ما هي الطريقة السهلة لرؤية إخراج trace() لأفلام Flash / Flex عند التشغيل في أي متصفح؟




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




ولما كان macromedia قد تم اكتسابه بواسطة adobe ، أعتقد أنه يجب أن يكون 'D: \ Documents and Settings \ user_name \ Application Data \ Adobe \ Flash Player \ Logs \ flashlog.txt'. الذي تم تعويضه بخسارة بضع دقائق بالنسبة لي. وأخيرا قررت محاولة إعطائها نظرة D: \ الوثائق وإعدادات \ user_name \ Application Data \ Macromedia \ Flash Player \ Logs \ flashlog.txt و bingo أستطيع أن أرى مخرجات التتبع flash ().

أتساءل لماذا adobe عتبة إبقاء موقع ملف السجل في مجلد macromedia.Whatever هو أنني أرى أن outptuts التتبع من تطبيقات فلاش تشغيل داخل المتصفح وأنا سعيد رجل :)




في Windows ، إذا كنت تستخدم إصدارًا محليًا (أي إسباني) من نظام التشغيل ، فيجب استبدال "بيانات التطبيق" بالإصدار المترجم (أي "Datos de programa")




يعمل أمر tail يونكس بشكل جيد بالنسبة لي:

tail -f ~/Library/Preferences/Macromedia/Flash\ Player/Logs/flashlog.txt

يحتفظ المفتاح -f بالسجل مفتوحًا ويموله عبر stdout في نافذة طرفية مفتوحة. هذا هو حل ماك ، لست متأكدا ما هو مكافئ tail ويندوز.

لاحظ أن هذا المسار يستند إلى هذا المستند المنشور أعلاه بواسطةJarvis.




قم بتنزيل وتثبيت إصدار مصحح المحتوى من Flash Player .

تمكين تسجيل التتبع ( الدليل الرسمي ) عن طريق إضافة ملف mm.cfg:

ErrorReportingEnable=1

    TraceOutputFileEnable=1

مكان حفظ mm.cfg يعتمد على نظام التشغيل:

  • نظام التشغيل Mac OS X: /Library/Application Support/Macromedia
  • نظام التشغيل Windows: %HOMEDRIVE%\%HOMEPATH%
  • Linux: /home/user name

يمكن العثور على ملف السجل ، flashlog.txt ، في:

  • Windows 95/98 / ME / 2000 / XP: C:\Documents and Settings\username\Application Data\Macromedia\Flash Player\Logs
  • Windows Vista: C:\Users\username\AppData\Roaming\Macromedia\Flash Player\Logs
  • نظام التشغيل Mac OS X: /Users/username/Library/Preferences/Macromedia/Flash Player/Logs/
  • Linux: /home/username/.macromedia/Flash_Player/Logs/

بشكل اختياري ، يمكنك تثبيت FBTracer في Firefox FBTracer الذي يعرض مخرجات التتبع في لوحة Firebug .




يجعل Vizzy الحياة أسهل إذا كنت ترغب في عارض logfile أساسي. عليك فقط تثبيت مشغل التصحيح ثم تثبيت Vizzy. وهي نافذة تقوم بنقل ملف flashlog. الشيء الحلو هو أن جميع bs ملف mm.cfg نيابة عنك.

code.google.com/p/flash-tracer




أنا مستخدم Thunderbolt سعيد ، ربما هو أيضا يستحق النظر (مستويات السجل متعددة ، يلعب بشكل جيد مع firebug خارج منطقة الجزاء).




أنا دائما تقريبا التعامل مع المواضيع المتعددة والخيط الرئيسي هو عموما لا تفعل الكثير ، لذلك ما هو الأكثر إثارة للاهتمام هو التخلص من جميع المداخن (وهو أشبه تفريغ جافا). في ما يلي تطبيق يستند إلى هذه المدونة :

import threading, sys, traceback

def dumpstacks(signal, frame):
    id2name = dict([(th.ident, th.name) for th in threading.enumerate()])
    code = []
    for threadId, stack in sys._current_frames().items():
        code.append("\n# Thread: %s(%d)" % (id2name.get(threadId,""), threadId))
        for filename, lineno, name, line in traceback.extract_stack(stack):
            code.append('File: "%s", line %d, in %s' % (filename, lineno, name))
            if line:
                code.append("  %s" % (line.strip()))
    print "\n".join(code)

import signal
signal.signal(signal.SIGQUIT, dumpstacks)




flash actionscript debugging trace browser-plugin