Menu

How To Profile

Cao Zongwei
Attachments
button.png (16502 bytes)
calltree.png (70074 bytes)
start-profile.png (49595 bytes)
statistics-source.png (79585 bytes)
viewsource.png (56654 bytes)

Start profile

The Xun bug has a client/server design so that it can be used to profile programs that run remotely.

After you have finished editing and building your Android program, you can launch the program on your workstation using the Profile > Profile As > Xun Bug menu item on the workbench. Launching the program in this way will establish a connection between the Xun Bug client and the Android program that you are launching. You may then see the profile data.

start profile

Refresh & Clear Data

Click the refresh button to refresh profile data then the call tree and the call statistics table will reload also.

Click the Clear button to clear profile data.

profile button

Call tree

On the call tree you can every call's time and percent of total time, you can expand the childs to see the detail profile data of child call.

profile button

Double click the resource to show the function in html or javascript file, Xun Bug will open the file and location to the line.

profile button

Call statistics

On the call statistics table you can see the statistic of every function's call count,call time,own call time(exclude children's time) and so on.
You can click the head of the table to resort profile data.

profile button


Discussion

  • Mead Lai

    Mead Lai - 2012-06-05

    Hello, After I click the refresh button, there is nothing happen, no call tree.
    XCode Version 4.3.2 (4E2002);
    PhoneGap: 1.7.0
    Could you give me a hand, I really need a debug tool.

    I have add my IP into "ExternalHosts",and add "RunScript", the SWt GUI is okay, but can't find any Javascript function call tree.

     

    Last edit: Mead Lai 2012-06-06
  • Cao Zongwei

    Cao Zongwei - 2012-06-05

    Maybe your mac OS has many IP address,such as
    en1: flags=8863<up,broadcast,smart,running,simplex,multicast> mtu 1500
    ether 10:40:f3:a3:8d:82
    inet6 fe80::1240:f3ff:fea3:8d82%en1 prefixlen 64 scopeid 0x5
    inet 192.168.5.131 netmask 0xffffff00 broadcast 192.168.5.255
    media: autoselect
    status: active</up,broadcast,smart,running,simplex,multicast>

    vnic1: flags=8843<up,broadcast,running,simplex,multicast> mtu 1500
    options=3<rxcsum,txcsum>
    ether 00:1c:42:00:00:09
    inet 10.37.129.2 netmask 0xffffff00 broadcast 10.37.129.255
    inet6 fe80::21c:42ff:fe00:9%vnic1 prefixlen 64 scopeid 0x9
    inet6 fdb2:2c26:f4e4:1::2 prefixlen 64
    media: autoselect
    status: active</rxcsum,txcsum></up,broadcast,running,simplex,multicast>

    Please check Xcode's output of ERROR whitelist rejection:
    2012-06-05 17:28:22.769 profile[25376:15103] ERROR whitelist rejection: url='http://10.37.129.2:8088/jsprofile.profile?date=1338888502767'

    set the ip to whitelist and try again

     
  • Mead Lai

    Mead Lai - 2012-06-06

    Thank you.
    There is no ERROR of whitelist rejection.
    But indeed I am using the HTTP-Proxy, that is problem.
    And now, It's okay, Thank you very much.

     

Log in to post a comment.

MongoDB Logo MongoDB