All Projects → wojteklu → Watchdog

wojteklu / Watchdog

Licence: mit
Class for logging excessive blocking on the main thread

Programming Languages

swift
15916 projects
ruby
36898 projects - #4 most used programming language
objective c
16641 projects - #2 most used programming language
shell
77523 projects

Projects that are alternatives of or similar to Watchdog

Bsodsurvivor
This project aims to facilitate debugging a kernel driver in windows by adding support for a code change on the fly without reboot/unload, and more!
Stars: ✭ 122 (-93.23%)
Mutual labels:  debugging
Android Remote Debugger
A library for remote logging, database debugging, shared preferences and network requests
Stars: ✭ 132 (-92.67%)
Mutual labels:  debugging
Clarify
Remove nodecore related stack trace noise
Stars: ✭ 140 (-92.23%)
Mutual labels:  debugging
Iopipe Js Core
Observe and develop serverless apps with confidence on AWS Lambda with Tracing, Metrics, Profiling, Monitoring, and more.
Stars: ✭ 123 (-93.17%)
Mutual labels:  debugging
Rexbug
A thin Elixir wrapper for the redbug Erlang tracing debugger.
Stars: ✭ 126 (-93.01%)
Mutual labels:  debugging
Pdt
PHP Development Tools project (PDT)
Stars: ✭ 135 (-92.51%)
Mutual labels:  debugging
Frodo
Android Library for Logging RxJava Observables and Subscribers.
Stars: ✭ 1,496 (-16.98%)
Mutual labels:  debugging
Wonolog
Monolog-based logging package for WordPress.
Stars: ✭ 142 (-92.12%)
Mutual labels:  debugging
Androidsnooper
Android library to record the network calls through the interceptor mechanism of the http clients.
Stars: ✭ 132 (-92.67%)
Mutual labels:  debugging
Loom
Easier to read LuaJIT dumps
Stars: ✭ 138 (-92.34%)
Mutual labels:  debugging
Dbg Macro
A dbg(…) macro for C++
Stars: ✭ 1,825 (+1.28%)
Mutual labels:  debugging
Asm
Assembly Tutorial for DOS
Stars: ✭ 125 (-93.06%)
Mutual labels:  debugging
Gdb Frontend
☕ GDBFrontend is an easy, flexible and extensionable gui debugger.
Stars: ✭ 2,104 (+16.76%)
Mutual labels:  debugging
Blender Debugger For Vscode
Blender addon for remote debugging Blender with VS Code (and Visual Studio)
Stars: ✭ 123 (-93.17%)
Mutual labels:  debugging
Strace Pipes Presentation
Presentation: Debugging across pipes and sockets with strace
Stars: ✭ 142 (-92.12%)
Mutual labels:  debugging
Remix Ide
Documentation for Remix IDE
Stars: ✭ 1,768 (-1.89%)
Mutual labels:  debugging
Cargo Flash
a cargo extension for programming microcontrollers
Stars: ✭ 134 (-92.56%)
Mutual labels:  debugging
Inappviewdebugger
A UIView debugger (like Reveal or Xcode) that can be embedded in an app for on-device view debugging
Stars: ✭ 1,805 (+0.17%)
Mutual labels:  debugging
Frodo2
Android Library for Logging RxJava2 Components
Stars: ✭ 142 (-92.12%)
Mutual labels:  debugging
Rogcat
A `adb logcat` wrapper
Stars: ✭ 137 (-92.4%)
Mutual labels:  debugging

Watchdog

Language Build Status Platform support CocoaPods Compatible Carthage compatible License MIT

Class for logging excessive blocking on the main thread. It watches the main thread and checks if it doesn’t get blocked for more than defined threshold.

👮 Main thread was blocked for 1.25s 👮

You can also inspect which part of your code is blocking the main thread.

Usage

Simply, just instantiate Watchdog with number of seconds that must pass to consider the main thread blocked. Additionally you can enable strictMode that stops the execution whenever the threshold is reached. This way, you can inspect which part of your code is blocking the main thread.

let watchdog = Watchdog(threshold: 0.4, strictMode: true)

Don't forget to retain Watchdog somewhere or it will get released when it goes out of scope.

Requirements

  • iOS 8.0+, tvOS 9.0+ or macOS 10.9+
  • Swift 5.0

Installation

Carthage

Add the following to your Cartfile:

github "wojteklu/Watchdog"

Then run carthage update.

Follow the current instructions in Carthage's README for up to date installation instructions.

CocoaPods

Add the following to your Podfile:

pod 'Watchdog'

You will also need to make sure you're opting into using frameworks:

use_frameworks!

Manually

Manually add the file into your Xcode project. Slightly simpler, but updates are also manual.

Author

Wojtek Lukaszuk @wojteklu

License

Watchdog is available under the MIT license. See the LICENSE file for more info.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].