# Handling EDT Exceptions and Crash Logging in Codename One

DevFeed: [Handling EDT Exceptions and Crash Logging in Codename One](<https://devfeed.tech/articles/tip-handle-edt-errors-19581.md>)

Original publisher: [Read original article](<https://www.codenameone.com/blog/tip-handle-edt-errors/>)

Author: Shai Almog

Published: 2017-05-21T00:00:00Z

Content type: tutorial

Language: en

Sources: [CodeName One](<https://devfeed.tech/sources/codename-one.md>)

Topics: [Exception](<https://devfeed.tech/topics/exception.md>), [Logging](<https://devfeed.tech/topics/logging.md>), [App](<https://devfeed.tech/topics/app.md>), [Code](<https://devfeed.tech/topics/code.md>)

Tags: [code](<https://devfeed.tech/tags/code.md>), [error-handling](<https://devfeed.tech/tags/error-handling.md>), [errors](<https://devfeed.tech/tags/errors.md>), [exception](<https://devfeed.tech/tags/exception.md>), [exceptions](<https://devfeed.tech/tags/exceptions.md>), [logging](<https://devfeed.tech/tags/logging.md>)

## AI overview

This tutorial explains how Codename One handles errors on the Event Dispatch Thread (EDT), including crash protection, exception recovery, error dialogs, stack traces, console logging, and email-based crash reports for Pro accounts.

## Source excerpt

Tracking & logging errors is crucial for a stable application. There are several tools we offer in Codename One both in the seamless level (crash protection) and in the lower level inner workings of Codename One. I'll try to explain both and how they interact. When you create a new Codename One application you might notice this line of code: Log.bindCrashProtection(true); This code binds the pro crash protection feature that will implicitly send you an email whenever the app crashes or has an exception. This email will include the stack trace and other output you wrote to the console using Log.p().