24
aeri in neon Setting up Automated Error Reporting for your own Eclipse plug-in or Eclipse RCP application neon

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

Embed Size (px)

Citation preview

Page 1: Setting up Automated Error Reporting for your Eclipse RCP App and Eclipse IDE plug-ins ( Democamp Ed.)

aeri in neonSetting up Automated Error Reporting for your own

Eclipse plug-in or Eclipse RCP application

neon

Page 2: Setting up Automated Error Reporting for your Eclipse RCP App and Eclipse IDE plug-ins ( Democamp Ed.)

Do you know aeri?

Page 3: Setting up Automated Error Reporting for your Eclipse RCP App and Eclipse IDE plug-ins ( Democamp Ed.)

about me

! @marcelbruch

" [email protected]

# de.linkedin.com/in/marcelbruch

$ xing.com/profile/Marcel_Bruch

Page 4: Setting up Automated Error Reporting for your Eclipse RCP App and Eclipse IDE plug-ins ( Democamp Ed.)

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

Page 5: Setting up Automated Error Reporting for your Eclipse RCP App and Eclipse IDE plug-ins ( Democamp Ed.)

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

Page 6: Setting up Automated Error Reporting for your Eclipse RCP App and Eclipse IDE plug-ins ( Democamp Ed.)

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

Page 7: Setting up Automated Error Reporting for your Eclipse RCP App and Eclipse IDE plug-ins ( Democamp Ed.)

setting up aeri for your own plug-ins

Page 8: Setting up Automated Error Reporting for your Eclipse RCP App and Eclipse IDE plug-ins ( Democamp Ed.)

two flavors

100% declarative

100% code

Page 9: Setting up Automated Error Reporting for your Eclipse RCP App and Eclipse IDE plug-ins ( Democamp Ed.)

100% declarative

plugin.xml discovery.json+ setupcomplete=

Page 10: Setting up Automated Error Reporting for your Eclipse RCP App and Eclipse IDE plug-ins ( Democamp Ed.)

demo

Page 11: Setting up Automated Error Reporting for your Eclipse RCP App and Eclipse IDE plug-ins ( Democamp Ed.)

98% code

plugin.xml MyServerConnection.java+ setup

complete=

Page 12: Setting up Automated Error Reporting for your Eclipse RCP App and Eclipse IDE plug-ins ( Democamp Ed.)

summary

• Unified UI for all Eclipse plug-ins

• 100% declarative <—> 100% Java

• Client auto-configuration (discovery)

• Customizable dialogs & server communication

Page 13: Setting up Automated Error Reporting for your Eclipse RCP App and Eclipse IDE plug-ins ( Democamp Ed.)

setting up aeri for your RCP application

Page 14: Setting up Automated Error Reporting for your Eclipse RCP App and Eclipse IDE plug-ins ( Democamp Ed.)

only one flavor…

Page 15: Setting up Automated Error Reporting for your Eclipse RCP App and Eclipse IDE plug-ins ( Democamp Ed.)

100% code

plugin.xml discovery.json+ setupcomplete=

Page 16: Setting up Automated Error Reporting for your Eclipse RCP App and Eclipse IDE plug-ins ( Democamp Ed.)

modeling an in-house workflow

(Platform-) LogListener.java

InHouseWorkflow.java+ «controller»

+ SilentServerConnection.java «io»

+ E4LifeCycle.postContextCreate() «wiring»

Page 17: Setting up Automated Error Reporting for your Eclipse RCP App and Eclipse IDE plug-ins ( Democamp Ed.)

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);

}

Page 18: Setting up Automated Error Reporting for your Eclipse RCP App and Eclipse IDE plug-ins ( Democamp Ed.)

setting up your error reporting server

for free

Page 19: Setting up Automated Error Reporting for your Eclipse RCP App and Eclipse IDE plug-ins ( Democamp Ed.)
Page 20: Setting up Automated Error Reporting for your Eclipse RCP App and Eclipse IDE plug-ins ( Democamp Ed.)

email digests

Page 21: Setting up Automated Error Reporting for your Eclipse RCP App and Eclipse IDE plug-ins ( Democamp Ed.)

bug tracker

Page 22: Setting up Automated Error Reporting for your Eclipse RCP App and Eclipse IDE plug-ins ( Democamp Ed.)

powerful searches

Page 23: Setting up Automated Error Reporting for your Eclipse RCP App and Eclipse IDE plug-ins ( Democamp Ed.)

aer.ctrlflow.com/signup

Page 24: Setting up Automated Error Reporting for your Eclipse RCP App and Eclipse IDE plug-ins ( Democamp Ed.)

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 " : [email protected] ! : @ctrlflow