Environments
For established applications, you may find that you have several environments for various stages of the development cycle.
Here's a real world example of how a company manages their mobile logs.
Software Development Cycle
The company use GitFlow branching model and has 4 primary branches.
Branch | Description |
---|---|
production | The code that is deployed to production. |
staging | The code prior to deploying to production. This acts as a staging area before pushing to production. |
develop | The active development branch |
sandbox | A branch to used for internal demos and/or QA. |
Logging Setup
There are a total of 8 environment Birch environments to match this setup.
Environment | Log Level | Flush Period | Description |
---|---|---|---|
ios-production | ERROR | 1h | Only track errors by default. |
ios-staging | TRACE | 30s | Since QA is run here and there are few devices, log verbosely. |
ios-sandbox | TRACE | 30s | Same as staging |
ios-develop | ERROR | 1h | Developers have access to console so remote logging likely unneccessary. |
android-production | ERROR | 1h | Only track errors by default. |
android-staging | TRACE | 30s | Since QA is run here and there are few devices, log verbosely. |
android-sandbox | TRACE | 30s | Same as staging |
android-develop | ERROR | 1h | Developers have access to logcat so remote logging likely unneccessary. |