Giter VIP home page Giter VIP logo

crashdumper's People

Contributors

and-0 avatar arperry avatar davidmaletz avatar gama11 avatar hasufel avatar jens-g avatar larsiusprime avatar leolannenmaki avatar loudoweb avatar misterpah avatar mrcdk avatar nospoone avatar tiagolr avatar yanrishatum avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

crashdumper's Issues

SystemData causes hangs, mysteriously

I'm getting reports from some users that the .bat files called by SystemData (on windows) are causing applications compiled with CrashDumper to crash on startup.

Ie, somewhere in here:
https://github.com/larsiusprime/crashdumper/blob/master/crashdumper/SystemData.hx#L58

At first I thought it might be b/c the users were on different locales than me (French, Portuguese, etc), but the output seems to be the same, or at least have no effect. I had them copy/paste the batch file output and I entered it myself and could not reproduce.

I'm wondering if it's a more general problem with making sys.io.Process calls -- these are apparently somewhat dangerous commands that can have unexpected results that lead to the program hanging or crashing. Is there any way to wrap them "safely?" Try/catch blocks don't seem to do anything.

Crashdump Browser timezone issue

Warning: date(): It is not safe to rely on the system's timezone settings. You are required to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected the timezone 'UTC' for now, but please set date.timezone to select your timezone.

I'm not a PHP guy but this 'warning' causes nothing to be displayed in the browser grid. Calling this
date_default_timezone_set('America/Los_Angeles');
at the top of grid.php solved the issue.

Filter broken

  • if you select all projects, the default first three statuses, select a type and function from the same project as each other, and a file from a different project, you get a row of data from the selected file (even though it's not the correct type or function)
  • if you do the above but select all statuses, you get the same row of data (still wrong), except that the project has been replaced by that of the selected error type, which is a data mismatch

This is with PR #24 applied.

crashdumper on mac?

I'm trying to lime test mac a project that includes crashdumper and it's giving me this error -
Error: Could not find asset path "/usr/lib/haxe/lib/crashdumper/git/assets/native_apps/mac"

crashdumper is showing up in my haxelib list (crashdumper: git [dev:/usr/lib/haxe/lib/crashdumper/git]). looking at the native_apps folder, I see a linux and windows folder, but nothing for mac.

Any insight into this?

Thanks!

If report directory different, no details available in crashdump server

Since the report directory is hardcoded to ../report in the api/details.php call, the details won't ever appear if the report directory differs from the default.
https://github.com/larsiusprime/crashdumper/blob/master/servers/crashdumpbrowser/api/detail.php#L26

Fix :
switch all instances of ../report in details.php with REPORT_DIR defined in
https://github.com/larsiusprime/crashdumper/blob/master/servers/crashdumpbrowser/includes/constants.inc.php#L5

No API to disable writing log to file

Currently to disable writing error log to file you have to manually edit CrashDumper.hx:doErrorStuff parameters. No api provided to change either writeToFile, sendToServer or traceToLog.

did not work

I am using openfl 3.3.9, I've opened the log file, but it has no lines number nor stack, I tried to both release and debug build, I've included both of:

<haxedef name="HXCPP_STACK_LINE" />
<haxedef name="HXCPP_STACK_TRACE" />

Thanks for great extension, I think it might need minor fix? I am haxe 3.2.1

Line and function refer to wrong end of stack

At least, in my opinion. E.g.


openfl._legacy.display.Stage.__pollTimers (openfl/_legacy/display/Stage.hx line 1084)

openfl._legacy.display.Stage.__checkRender (openfl/_legacy/display/Stage.hx line 351)

openfl._legacy.display.Stage.__render (openfl/_legacy/display/Stage.hx line 1103)

openfl._legacy.display.DisplayObjectContainer.__broadcast (openfl/_legacy/display/DisplayObjectContainer.hx line 286)

openfl._legacy.display.DisplayObject.__broadcast (openfl/_legacy/display/DisplayObject.hx line 161)

openfl._legacy.display.DisplayObject.__dispatchEvent (openfl/_legacy/display/DisplayObject.hx line 182)

openfl._legacy.events.EventDispatcher.dispatchEvent (openfl/_legacy/events/EventDispatcher.hx line 98)

flixel.FlxGame.onEnterFrame (flixel/FlxGame.hx line 530)

flixel.FlxGame.step (flixel/FlxGame.hx line 663)

flixel.FlxGame.update (flixel/FlxGame.hx line 750)

flixel.input.mouse.FlxMouseEventManager.update (flixel/input/mouse/FlxMouseEventManager.hx line 404)

minigames.general.NiceButton.clickHandler (minigames/general/NiceButton.hx line 137)

ConfirmExitSubState.yes (ConfirmExitSubState.hx line 49)

Main.crashOnPurpose (Main.hx line 230)

Currently I think it would make sense to display crashOnPurpose rather than __pollTimers, since a heck of a lot of stack traces would start with that.

Emailing crash reports

Hi, I made a quick way to e-mail crash reports for windows. I tried coding the e-mail part in Haxe, but I couldn't get it to work so I decided to use an external .exe to send the e-mail. I used mailsend: https://github.com/muquit/mailsend

Mailsend works on Mac, Linux, and Windows, it's just a matter of selecting the right binary. In my version I use Windows, but it could be fixed to work with any OS.

https://gist.github.com/Ohmnivore/30114143c40d60be72fd
my additions can be found if you look for sub, msg, and sendMail

I'm aware this is a bad solution, but until someone figures out how to send e-mail with Haxe that's what I'm gonna use.

Cheers!

Error while compiling!

Hi just used crashdumper and I got this issue while compiling

> Executing task: lime build html5 --connect 6000 <

C:/HaxeToolkit/haxe/lib/lime/7,6,3/src/lime/graphics/opengl/GLBuffer.hx:16: characters 20-40 : You cannot access the js package while in a macro (for js.html.webgl.Buffer)
C:/HaxeToolkit/haxe/lib/lime/7,6,3/src/lime/_internal/backend/native/NativeCFFI.hx:4: characters 8-37 :     referenced here
C:/HaxeToolkit/haxe/lib/lime/7,6,3/src/lime/graphics/Image.hx:7: characters 8-48 :     referenced here
C:/HaxeToolkit/haxe/lib/lime/7,6,3/src/lime/ui/Window.hx:5: characters 8-27 :     referenced here
C:/HaxeToolkit/haxe/lib/lime/7,6,3/src/lime/graphics/RenderContext.hx:4: characters 8-22 :     referenced here
C:/HaxeToolkit/haxe/lib/lime/7,6,3/src/lime/app/Application.hx:3: characters 8-35 :     referenced here
src/crashdumper/hooks/openfl/HookOpenFL.hx:6: characters 9-29 :     referenced here
src/crashdumper/hooks/Util.hx:2: characters 8-43 :     referenced here
src/crashdumper/hooks/openfl/HookOpenFL.hx:61: characters 16-53 :     referenced here
The terminal process terminated with exit code: 1

haxe libraries:
actuate: [1.8.9]
box2d: [1.2.3]
hxcpp: [4.0.64]
layout: [1.2.1]
lime-samples: [7.0.0]
lime: [7.6.3]
openfl-samples: [8.7.0]
openfl: [8.9.5]
starling: [2.5.1]

IDE: VS Code but same issues with Haxe Develop
Windows 10 64 bit

Thanks!

Create server-side crashdump reader

CrashDumper needs to be able to send the crash dumps somewhere useful, ie, to the developer.

Requirements:

  1. Server-side script (php?)
  2. Looks for variables sent via HTTP POST
  3. Validates the format to ensure that it's non-malicious
    • Format should look like legal output from this program
    • Shouldn't have non-printable characters, etc.
  4. Saves the file(s) to a non-www-enabled location on the server.
    • Database, flat files, I don't really care. Whatever's simpler.
  5. Optional: process file(s), consolidate similar crashdumps?

I figure having the server-side script would be useful to people, too. I suppose we could write this bit in Haxe as well if we can output it to a ubiquitous server-side language like PHP? Then again I'm not picky, if someone just knows how to do this in raw PHP (or whatever the kids are using these days) that's cool with me.

No log is created on Windows when running example

On Neko the example works perfectly, but on Windows the example doesn't save anything. I inserted a trace statement in the onErrorEvent, but it isn't executed. I'm guessing that the default windows 7 "Example.exe has stopped working" popup blocks the onErrorEvent callback from executing.

System info:
SystemData.hx:56: SystemData

{

OS : Windows 7 SP1

RAM: 8387768 KB (8 GB)

CPU: Intel(R) Core(TM)2 Quad CPU Q6600 @ 2.40GHz

GPU: ATI Radeon HD 3400 Series, driver v. 8.970.100.1100

}

Fixed -> crash on newer version -> not listed (but should be)

Once you have fixed an error, you can mark it as fixed from the top-level view. If you do, then the error will be hidden by default, and further reports of the same error will be ignored unless they originate from a version more recent than your fix version. (Oops! Maybe it wasn't so fixed after all.)

I had this happen just now, but the main listing with New / Reopened / In progress selected shows nothing. If I show "Fixed" it appears, and clicking for further detail, it shows that only the most recent one is from version 0.2.0, whereas the earlier ones (including where it was marked Fixed) were from version 0.1.9. Therefore this one should be showing on the main listing (I think with Reopened selected, that should be doing it?)

This is too bad...maybe one of the handiest features!

EOF Error when trying to make crash log

Trying to implement this in my own project. It's successfully tracing the crash I have set up, but I get an EOF error afterwards. I'm using HaxeDevelop on windows 10, no other added haxelibs used other than openFL and actuate.

CrashDumper.hx:138: onError(EOF) Called from hxcpp::__hxcpp_main Called from ApplicationMain::main ApplicationMain.hx line 78 Called from ApplicationMain::create ApplicationMain.hx line 110 Called from lime.app.Application::exec lime/app/Application.hx line 218 Called from lime._backend.native.NativeApplication::exec lime/_backend/native/NativeApplication.hx line 145 Called from lime._backend.native.NativeApplication::handleMouseEvent lime/_backend/native/NativeApplication.hx line 389 Called from lime.app._Event_Float_Float_Void::dispatch lime/_macros/EventMacro.hx line 101 Called from openfl.display.Stage::addWindow openfl/display/Stage.hx line 242 Called from openfl.display.Stage::onMouseMove openfl/display/Stage.hx line 531 Called from openfl.display.Stage::__handleError openfl/display/Stage.hx line 1238 Called from openfl.events.EventDispatcher::dispatchEvent openfl/events/EventDispatcher.hx line 97 Called from openfl.events.EventDispatcher::__dispatchEvent openfl/events/EventDispatcher.hx line 218 Called from crashdumper.CrashDumper::onErrorEvent crashdumper/CrashDumper.hx line 192

$project not defined in CrashDumper Browser

The CrashDumper browser is looking for 'game id' in the zip file being posted by crashdumper. This value never gets set in my setup, therefore crash dumps are never recorded in the db.

Grid empty on crashdumpbrowser

Even with 3 reports in, the table is empty. Turns out the fetched file has errors:

<br />
<b>Warning</b>:  Parameter 2 to mysqli_stmt::bind_param() expected to be a reference, value given in <b>.../crashdumpbrowser/includes/db.inc.php</b> on line <b>344</b><br />
{"col1":"<input type=\"checkbox\"\/>","col2":"<select><option value=\"\">Select...<\/option><option value=\"1\">Move to In Progress<\/option><option value=\"2\">Move to Fixed<\/option><option value=\"4\">Move to Won't Fix<\/option><option value=\"3\">Move to Reopened<\/option><option value=\"5\">Mark as Duplicate...<\/option><\/select>","rows":[],"total":0,"page":0,"perPage":50}

Ah, this would actually be caused by my PR #24 but without it, it also crashes on that line due to deprecated usage.

Game id missing by default, preventing reports from being generated

It seems ERROR_PROJECTNAME in the php server is by default set to game id which the client never sends

define("ERROR_PROJECTNAME", "game id");

Since strlen($project) returns 0, the error never gets submitted

if ((strlen($exception) || strlen($file) || strlen($function)) && strlen($project)) {

What worked in my case was changing the value to "package"

define("ERROR_PROJECTNAME", "package");

Example project creates no logs on Windows

Versions:

Haxe: 4.1.5
OpenFL: 9.1.0
CrashDumper: git
CPU: Name=Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz
GPU: Name=NVIDIA GeForce GTX 1070,DriverVersion=27.21.14.6611
Mem: TotalVisibleMemorySize=16734280
OS: Microsoft Windows [Version 10.0.19042.1165]

Steps to reproduce:

  1. Clone the crashdumper project.
  2. Run lime build windows -debug with the above library versions.
  3. Run the executable. It starts as expected.
  4. Click the square. The program crashes

Expected behavior: The program should crash and a log file should be generated.
Actual behavior: The log folder is not created.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.