Comments (5)
At least least this should be opt-in, not on by default.
👍
But maybe this can be removed and we don't have to maintain it.
I think it could be useful to users to automatically track exception as Events in their app
from matomo-sdk-android.
Explicitly tracking exceptions could have some usecase, but even then it's almost always replaceable with if-checks, then track a normal event, which is better practice.
Automaticially tracking all exceptions needs strong filtering and extra options on the server side.
As i said for small apps 5k-20k active users this could work, but even then i would recommend picking something like Crashlytics that was made for this. Having options to hide processed exceptions, stopping reporting from older app versions etc.
If we venture into higher user counts like 100k-150k users, you will get daily crash that are unrelated to your app, but just got caught in your exception handler. With no server-side organisiation, it will spam the event section until it's unusuable.
I would propose to reduce the crash tracking to method that wraps the normal trackEvent method and just converts an Exception object to a useful message. Then remove everything else including automatic exception catching.
I don't want to throw the current piwik-android-sdk over, I'm just speaking out of experience. Sorry for all the scrutiny.
from matomo-sdk-android.
Oh it's very useful to have your scrutiny actually!
I would propose to reduce the crash tracking to method that wraps the normal trackEvent method and just converts an Exception object to a useful message. Then remove everything else including automatic exception catching.
Would this change the way the exception are tracked, eg. https://github.com/piwik/piwik-sdk-android#dispatching ? if so please submit the change to documentation with your PR
from matomo-sdk-android.
No, it will stay the same, I would basically remove the automatic exception handling and then simplify the exposed API.
I'll make a pullrequest when I'm done with the current one and we can discuss it when everyone can see the changes. I can tag you on the pullrequest if you want.
I'll have a look through the docs though to see if it needs updating.
Alexey did an awesome job with what we already have and i followed this project for some time and wished i could have joined sooner.
I currently have a (very patch worky) self made tracking with json + node.js + couchdb and my goal is to replace that with piwik. It's relatively urgend because i underestimated the user growth and amount of data that is to handle. Piwik to the rescue ;).
Got many more ideas and PRs in mind, i hope @dotsbb will like most of them :o.
from matomo-sdk-android.
My concerns are addressed with PR #33 further discussion can be done there.
from matomo-sdk-android.
Related Issues (20)
- Test new release pipeline HOT 2
- multiple devices appear under the same visitor profile
- trackOutlink() is not working HOT 6
- Unexpected abandoned cart behavior
- Release a demo public UI of an Android App tracked with Matomo
- Keeps trying ipv6 on a non-ipv6 network
- [Questions] General behavior of sessions
- [Question] How to use Tag Manager
- [Question] How to use campaigns via the SDK
- Add support for new Crash Analytics feature HOT 1
- Strict violations HOT 1
- Unable to See Tracking Event on Dashboard
- Single event doesn't appear on Dashboard HOT 4
- setOptOut clears dispatecher each time the method is invoked HOT 1
- java.lang.NullPointerException issue on version 4.2 HOT 3
- Don't track meta-data HOT 3
- How can I know the kind of cookies I used in the sdk ?
- Add license information to pom file HOT 2
- [Question] How to Determine Dispatch Success When Manually Dispatching Events? HOT 4
- EventDiskCache not invoked when online
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from matomo-sdk-android.