Bugfender has a feature called Issues. It serves both for technical problems, like an assertion fail, or for user-supplied feedback.
All feedback is sent with a simple API call:
Bugfender.sendIssue("Something's wrong", "Details of the error here...")
What this call does is:
- Gather all logs for the current execution of the app (we call this a "session"). This comprises all logs since the beginning of the execution of the application and will keep gathering until the application process dies.
- Send the logs to the server
- Alert you. By default it sends an e-mail, but you can use a Zapier integration to send it to GitHub, BitBucket, Basecamp, Asana or wherever you want.
You can see more details here: http://bugfender.com/issues
You may also want to use a UI for feedback collection. You can have a look at PinpointKit and plug it to Bugfender.