Hi Dennis,

Thank you for the message. Alot of my frustration deals with the fact that 
I am working on a widget and there is very little documentation about how 
it all works. So most of my time was spent researching the existing 
fieldAnalyzer widget code and the map-widget plugin repo to figure out how 
things are wired.

Here are some of the things that I feel could use a little more clarity for 
developers of GrayLog plugins.


   - I feel the version information should be more straight forward. For 
   example, if you attempt to build a widget using the default guidance, you 
   will pull down the 2.2.0-SNAPSHOT graylog2-server. This will not be 
   compatible if you are attempting to make a widget for a 2.1.X graylog 
   installation. Use the 2.1.3 graylog2-server repo in that case.
   - What to do if you come across certain errors (vendor manifest not 
   existing, org.graylog-autovalue not being found, userstatistics module 
   version mismatch, graylog2-server version mismatch, common mvn errors, etc.)

Regarding Web Plugin Widgets in general, the following information would 
help ease development for newer developers of GrayLog (or Java and React) 
plugins.

   - Basic flow of a widget that conducts a query.
   - Configuration and storage of the widget configuration, how to 
   access/modify widget configuration?
   - Coverage of configurationCreateComponent, configurationEditComponent 
   and any other relevant widget properties.
   - Configuration required for a FieldAnalyzer, setting up a fieldAnalyzer.
   - What stores are (SearchStore/RefreshStore) and when they are used.
   - The minimum JAVA configuration that has to be coded to wire a widget 
   (WidgetStrategy) to pull data and update itself. Go over registering the 
   widget in the Plugin.
   
The plugin widget I am working on is a fork of QuickValues widget, with a 
few additions such as:

   - Additional "Remove from Search" Button (Will add field with negation 
   to search bar); (WORKING)
   - Can adjust sort order of the table (d3.descending or d3.ascending). 
   (NOT WORKING - Uses radio buttons in the configuration and I cannot select 
   anything at this point.)
   - Can adjust table size (Can provide a number higher than 50 if need be) 
   (SHOULD BE WORKING)
   - Can adjust top values (Currently hard-coded at 5). (SHOULD BE WORKING)

The plugin works shows up as a fieldAnalyzer properly in the web dev 
(scripts/start-web-dev), in a stable environment I get the error I put at 
start of thread (Uncaught TypeError: Cannot read property 'call' of 
undefined). Another issue I am having is when I update the search terms in 
the search bar, the widget doesn't update (other widget, such as quick 
values widget do update). Something must be off in the fieldanalyzer code 
I'm guessing, I'm not quite sure the best way to work with the SearchStore 
to ensure that the refresh is getting enabled for the fieldAnalyzer. 
Hopefully I'll figure it out today.


Hope this feedback is helpful to you guys. I may be able to help with a few 
doc updates when I'm finally done and have a decent widget plugin 
understanding.


-Bill

On Wednesday, February 1, 2017 at 12:57:29 AM UTC-10, Dennis Oelkers wrote:
>
> Hey Bill, 
>
> could you tell us a bit more about the frustration you had when trying to 
> build a plugin, so we can either improve the documentation or the build 
> process? 
>
> Kind regards, 
>         D. 
>
> > On 31.01.2017, at 06:46, Bill Murrin <bill....@gmail.com <javascript:>> 
> wrote: 
> > 
> > Hi everyone, 
> > 
> > I'm attempting to build a web plugin that will also act as a Field 
> Analyzer. 
> > 
> > After much frustration and various undocumented errors, I've been able 
> to build the package successfully! :-) 
> > 
> > When I add the plugin, it shows up as a plugin, but does not act 
> accordingly. 
> > 
> > When I look at the Page Code, I see the following: 
> > 
> > Uncaught TypeError: Cannot read property 'call' of undefined 
> >     at t (vendor.js:1) 
> >     at Object.<anonymous> 
> (plugin.<redacted>Plugin.0c250351f8fb2b358bf1.js:2905) 
> >     at __webpack_require__ 
> (plugin.<redacted>Plugin.0c250351f8fb2b358bf1.js:20) 
> >     at Object.<anonymous> 
> (plugin.<redacted>Plugin.0c250351f8fb2b358bf1.js:2899) 
> >     at __webpack_require__ 
> (plugin.<redacted>Plugin.0c250351f8fb2b358bf1.js:20) 
> >     at _URI (plugin.<redacted>Plugin.0c250351f8fb2b358bf1.js:139) 
> >     at Object.<anonymous> 
> (plugin.<redacted>Plugin.0c250351f8fb2b358bf1.js:147) 
> >     at __webpack_require__ 
> (plugin.<redacted>Plugin.0c250351f8fb2b358bf1.js:20) 
> >     at Object.<anonymous> 
> (plugin.<redacted>Plugin.0c250351f8fb2b358bf1.js:101) 
> >     at __webpack_require__ 
> (plugin.<redacted>Plugin.0c250351f8fb2b358bf1.js:20) 
> >     at Object.<anonymous> 
> (plugin.<redacted>Plugin.0c250351f8fb2b358bf1.js:49) 
> >     at __webpack_require__ 
> (plugin.<redacted>Plugin.0c250351f8fb2b358bf1.js:20) 
> >     at plugin.<redacted>Plugin.0c250351f8fb2b358bf1.js:40 
> >     at plugin.<redacted>Plugin.0c250351f8fb2b358bf1.js:43 
> > 
> > I would appreciate any help or suggestions that can be provided. 
> > 
> > Thanks in advance. 
> > 
> > -Bill 
> > 
> > -- 
> > You received this message because you are subscribed to the Google 
> Groups "Graylog Users" group. 
> > To unsubscribe from this group and stop receiving emails from it, send 
> an email to graylog2+u...@googlegroups.com <javascript:>. 
> > To view this discussion on the web visit 
> https://groups.google.com/d/msgid/graylog2/635c5eac-620f-4ed1-9cc0-980731a97de8%40googlegroups.com.
>  
>
> > For more options, visit https://groups.google.com/d/optout. 
>
> -- 
> Tel.: +49 (0)40 609 452 077 
> Fax.: +49 (0)40 609 452 078 
>
> TORCH GmbH - A Graylog company 
> Poolstrasse 21 
> 20355 Hamburg 
> Germany 
>
> Commercial Reg. (Registergericht): Amtsgericht Hamburg, HRB 125175 
> Geschäftsführer: Lennart Koopmann (CEO) 
>
>

-- 
You received this message because you are subscribed to the Google Groups 
"Graylog Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to graylog2+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/graylog2/26b51a02-64e9-4f12-a0e3-5ebc2f3ddcb5%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to