Setting up Automated Error Reporting for your Eclipse RCP App and Eclipse IDE plug-ins ( Democamp...

Post on 18-Mar-2018

230 views 0 download

Transcript of Setting up Automated Error Reporting for your Eclipse RCP App and Eclipse IDE plug-ins ( Democamp...

aeri in neonSetting up Automated Error Reporting for your own

Eclipse plug-in or Eclipse RCP application

neon

Do you know aeri?

about me

! @marcelbruch

" marcel.bruch@codetrails.com

# de.linkedin.com/in/marcelbruch

$ xing.com/profile/Marcel_Bruch

what’s new in neon?

• With Eclipse Neon, everyone can sign up to receive error reports for their plug-ins.

• This demo shows how.

Check out the full webinar on youtube

aeri in mars

• 3,000,000 error reports for Mars.0-2

• 350,000 users

• 20,000 distinct problems

• 7,800 problems fixed with Mars.2

problems by release

0

4.500

9.000

13.500

18.000

Mars.0 Mars.1 Mars.2

11.967

16.26617.253

Last updated: May 30, 2016

setting up aeri for your own plug-ins

two flavors

100% declarative

100% code

100% declarative

plugin.xml discovery.json+ setupcomplete=

demo

98% code

plugin.xml MyServerConnection.java+ setup

complete=

summary

• Unified UI for all Eclipse plug-ins

• 100% declarative <—> 100% Java

• Client auto-configuration (discovery)

• Customizable dialogs & server communication

setting up aeri for your RCP application

only one flavor…

100% code

plugin.xml discovery.json+ setupcomplete=

modeling an in-house workflow

(Platform-) LogListener.java

InHouseWorkflow.java+ «controller»

+ SilentServerConnection.java «io»

+ E4LifeCycle.postContextCreate() «wiring»

setup in e4

public class E4LifeCycle {

@PostContextCreatevoid postContextCreate(IEclipseContext workbenchContext) {

// 1. AERI uses Eclipse DI wherever possible:IEclipseContext context = SystemControl.getSystemContext();context.setParent(workbenchContext);

// 2. Create and register the server-connection and workflow with AERI:context.set(IServerConnection.class, new SilentServerConnection());context.set(InHouseWorkflow.class, ContextInjectionFactory.make(InHouseWorkflow.class, context));

// 3. Create the log listenercontext.set(LogListener.CTX_STATUS_FILTER, Predicates.alwaysTrue());context.set(LogListener.class, ContextInjectionFactory.make(LogListener.class, context));

// 4. Finally, register the listener with the platformLogListener l = context.get(LogListener.class);Platform.addLogListener(l);

}

setting up your error reporting server

for free

email digests

bug tracker

powerful searches

aer.ctrlflow.com/signup

thank you

Eclipse AERI IDE Client: % : wiki.eclipse.org/EPP/Logging " : www.eclipse.org/forums/index.php/f/69/ : mattermost.eclipse.org/eclipse/channels/epp-aeri

Ctrlflow Automated Error Reporting SaaS:% : www.ctrlflow.com/automated-error-reporting " : support@ctrlflow.com ! : @ctrlflow