Page Menu
Home
GitPull.it
Search
Configure Global Search
Log In
Paste
P15
Libre BusTO Android Crash Analyzer
Active
Public
Actions
Authored by
valerio.bozzolan
on Mon, Feb 15, 21:24.
Edit Paste
Archive Paste
View Raw File
Subscribe
Mute Notifications
Award Token
Flag For Later
Tags
Libre BusTO
Subscribers
None
<?php
# Android Crash Dump exporter for Phabricator
# Copyright (C) 2021 Valerio Bozzolan
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU Affero General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>
/**
* Quick and dirty Android Crash Dump analyzer
*
* https://gitpull.it/P15
*/
// base of your Phabricator
define
(
'BASE_URI'
,
'https://gitpull.it/maniphest/task/edit/form/3/?'
);
// received data
$data_raw
=
$_POST
[
'data'
]
??
null
;
$data_clean_text
=
null
;
$task_args
=
null
;
if
(
$data_raw
)
{
$data
=
@
json_decode
(
$data_raw
);
if
(
$data
)
{
$data_raw
=
json_encode
(
$data
,
JSON_PRETTY_PRINT
);
// some useful informations
$data_clean
=
[
'version code'
=>
$data
->
APP_VERSION_CODE
??
null
,
'version name'
=>
$data
->
APP_VERSION_NAME
??
null
,
'phone'
=>
$data
->
PHONE_MODEL
??
null
,
'brand'
=>
$data
->
BRAND
??
null
,
'stack'
=>
$data
->
STACK_TRACE
??
null
,
];
// build an human phrase
$data_clean_parts
=
[];
foreach
(
$data_clean
as
$k
=>
$v
)
{
$data_clean_parts
[]
=
"$k:
\n
$v"
;
}
$data_clean_text
=
implode
(
"
\n\n
"
,
$data_clean_parts
);
// build query string
$task_args
=
[
'title'
=>
"Fix crash when..."
,
'description'
=>
implode
(
"
\n
"
,
[
"Dear Developers,"
,
"Please triage this crash:"
,
''
,
'```'
,
''
,
$data_clean_text
,
"
\n
"
,
'```'
,
''
,
''
,
"Thank you! :)"
,
''
,
''
,
"> Generated with https://lab.reyboz.it/libre-busto/crash-report/ (P15)"
,
]
),
];
}
else
{
$data_raw
=
'invalid'
;
}
}
?>
<html>
<head>
<title>Libre BusTO - crash report dump</title>
</head>
<body>
<h1>Libre BusTO - crash report dump</h1>
<form method="post">
<?php
if
(
$data_clean_text
):
?>
<p>Info:</p>
<textarea readonly>
<?
=
htmlentities
(
$data_clean_text
)
?>
</textarea>
<?php
if
(
$task_args
):
?>
<br />
<a href="
<?
=
htmlspecialchars
(
BASE_URI
.
http_build_query
(
$task_args
)
)
?>
" target="_blank">Create Task</a>
<?php
endif
?>
</p>
<?php
endif
?>
<p>Paste here your bug report:</p>
<p><textarea name="data">
<?
=
htmlentities
(
$data_raw
)
?>
</textarea></p>
<p><button type="submit">OK</button></p>
</form>
<hr />
<p><a href="https://gitpull.it/tag/libre_busto/">Workboard</a></p>
<hr />
<p><a href="https://gitpull.it/P15" target="_blank">Source code and license</a></p>
</body>
</html>
Event Timeline
valerio.bozzolan
created this paste.
Mon, Feb 15, 21:24
valerio.bozzolan
edited the content of this paste.
(Show Details)
valerio.bozzolan
edited the content of this paste.
(Show Details)
Mon, Feb 15, 21:28
valerio.bozzolan
edited the content of this paste.
(Show Details)
valerio.bozzolan
mentioned this in
T645: Simplify extraction of JSON debug data received via mail
.
Log In to Comment