Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Grafana 8.0.0: Unknown provider: keybindingSrvProvider <- keybindingSrv #103

Closed
jm66 opened this issue Jun 8, 2021 · 12 comments
Closed

Comments

@jm66
Copy link

jm66 commented Jun 8, 2021

Just upgraded to Grafana v8.0.0. The plugin area does not load and when try to edit the map settings I've got the following error:

TypeError: Cannot read property 'emit' of undefined
    at U (https://host.localdomain/public/build/default~DashboardPage~SoloPanelPage.08d1221db5b53eadbfe4.js:10:112)
    at div
    at i (https://host.localdomain/public/build/app.08d1221db5b53eadbfe4.js:4202:201976)
    at H (https://host.localdomain/public/build/default~DashboardPage~SoloPanelPage.08d1221db5b53eadbfe4.js:10:3075)
    at div
    at div
    at P (https://host.localdomain/public/build/default~DashboardPage~SoloPanelPage.08d1221db5b53eadbfe4.js:1:8114)
    at div
    at z (https://host.localdomain/public/build/default~DashboardPage~SoloPanelPage.08d1221db5b53eadbfe4.js:10:3303)
    at div
    at ne (https://host.localdomain/public/build/default~DashboardPage~SoloPanelPage.08d1221db5b53eadbfe4.js:10:11530)
    at k (https://host.localdomain/public/build/vendors~app.08d1221db5b53eadbfe4.js:2:70367)
    at div
    at t (https://host.localdomain/public/build/vendors~app.08d1221db5b53eadbfe4.js:2:1897376)
    at div
    at ce (https://host.localdomain/public/build/default~DashboardPage~SoloPanelPage.08d1221db5b53eadbfe4.js:10:14771)
    at k (https://host.localdomain/public/build/vendors~app.08d1221db5b53eadbfe4.js:2:70367)
    at div
    at r (https://host.localdomain/public/build/DashboardPage.08d1221db5b53eadbfe4.js:95:17727)
    at d (https://host.localdomain/public/build/DashboardPage.08d1221db5b53eadbfe4.js:19:62235)
    at p (https://host.localdomain/public/build/DashboardPage.08d1221db5b53eadbfe4.js:19:45858)
    at div
    at u (https://host.localdomain/public/build/DashboardPage.08d1221db5b53eadbfe4.js:95:3418)
    at https://host.localdomain/public/build/DashboardPage.08d1221db5b53eadbfe4.js:500:467
    at t (https://host.localdomain/public/build/DashboardPage.08d1221db5b53eadbfe4.js:19:38208)
    at t (https://host.localdomain/public/build/DashboardPage.08d1221db5b53eadbfe4.js:19:38642)
    at r (https://host.localdomain/public/build/DashboardPage.08d1221db5b53eadbfe4.js:19:39944)
    at j (https://host.localdomain/public/build/DashboardPage.08d1221db5b53eadbfe4.js:500:1015)
    at div
    at div
    at div
    at t (https://host.localdomain/public/build/vendors~app.08d1221db5b53eadbfe4.js:2:706836)
    at h (https://host.localdomain/public/build/app.08d1221db5b53eadbfe4.js:5433:31539)
    at div
    at div
    at W (https://host.localdomain/public/build/DashboardPage.08d1221db5b53eadbfe4.js:482:667)
    at DashboardPage
    at k (https://host.localdomain/public/build/vendors~app.08d1221db5b53eadbfe4.js:2:70367)
    at n (https://host.localdomain/public/build/vendors~app.08d1221db5b53eadbfe4.js:2:462197)
    at dr (https://host.localdomain/public/build/app.08d1221db5b53eadbfe4.js:5608:3196)
    at t (https://host.localdomain/public/build/vendors~app.08d1221db5b53eadbfe4.js:2:1206671)
    at t (https://host.localdomain/public/build/vendors~app.08d1221db5b53eadbfe4.js:2:1208716)
    at div
    at t (https://host.localdomain/public/build/vendors~app.08d1221db5b53eadbfe4.js:2:1203276)
    at div
    at at (https://host.localdomain/public/build/app.08d1221db5b53eadbfe4.js:3073:1106)
    at h (https://host.localdomain/public/build/app.08d1221db5b53eadbfe4.js:5431:19756)
    at Di (https://host.localdomain/public/build/app.08d1221db5b53eadbfe4.js:3724:564)
    at Ei (https://host.localdomain/public/build/app.08d1221db5b53eadbfe4.js:3724:848)
    at l (https://host.localdomain/public/build/vendors~app.08d1221db5b53eadbfe4.js:2:68275)
    at Nr (https://host.localdomain/public/build/app.08d1221db5b53eadbfe4.js:5621:300)

The console throws this exception:

react_devtools_backend.js:2560 Plugin component error Error: [$injector:unpr] Unknown provider: keybindingSrvProvider <- keybindingSrv
https://errors.angularjs.org/1.8.2/$injector/unpr?p0=keybindingSrvProvider%20%3C-%20keybindingSrv
    at angular.js:138
    at angular.js:4991
    at Object.s [as get] (angular.js:5151)
    at angular.js:4996
    at Object.s [as get] (angular.js:5151)
    at t.getKeybindingSrv (chrome.ts:74)
    at t.restoreEscapeKeyBinding (chrome.ts:69)
    at e.setupGlobal (worldmap_ctrl.ts:171)
    at e [as constructor] (worldmap_ctrl.ts:133)
    at Object.invoke [as oldInvoke] (angular.js:5208)
@MarcoPignati
Copy link

could it be due to the fact that the plugin is unsigned?
sudo systemctl status grafana-server.service
returns
... /usr/sbin/grafana-server[7868]: t=2021-06-09T09:26:18+0200 lvl=warn msg="Some plugin scanning errors were found" logger=plugins errors="plugin 'grafana-map-panel' is unsigned" ...
there is a way to allow unsigned plugins here (haven't tried it yet), but maybe it should be signed to be on the safe side.

@jm66
Copy link
Author

jm66 commented Jun 9, 2021

Already allowed grafana-map-panel to load in grafana.ini:

[plugins]
;enable_alpha = false
;app_tls_skip_verify_insecure = false
# Enter a comma-separated list of plugin identifiers to identify plugins that are allowed to be loaded even if they lack a valid signature.
allow_loading_unsigned_plugins = grafana-map-panel

@amotl
Copy link

amotl commented Jun 9, 2021

Hi @jm66,

thank you very much for reporting your observations. We will have to look into this issue.

Attaching to the Unknown provider: keybindingSrvProvider <- keybindingSrv error you reported: This is related to the ignoreEscapeKey feature, coming from community requests outlined within grafana/grafana#11636 and grafana/grafana#13706 and implemented here by eea48c4.

So, we will have to discover an alternative to the current implementation [1] to get hold of the keybinding service component of Grafana 8. Maybe you can look into that already? Alternatively, we can try to conditionally disable this feature on Grafana 8.

With kind regards,
Andreas.

[1] https://github.com/panodata/grafana-map-panel/blob/0.15.0/src/chrome.ts#L72-L75

@amotl
Copy link

amotl commented Jun 9, 2021

Dear @jm66 and @MarcoPignati,

Alternatively, we can try to conditionally/gracefully disable the ignoreEscapeKey feature on Grafana 8.

I just implemented this with #104. Can you check this and maybe verify if that would already work in order to make this plugin compatible with not croak on Grafana 8?

With kind regards,
Andreas.

@ShagoY
Copy link

ShagoY commented Jun 18, 2021

Sorry to hijack this conversation i use grafana under docker.
So i use the grafana-cli (see) to install the plugin (version 0.15.0).
Is there any way I can take advantage of this patch without having to create a development environment or create my own docker image?

@MarcoPignati
Copy link

I confirm that #104 seems to fix the issue

@amotl
Copy link

amotl commented Jun 29, 2021 via email

@andsens
Copy link

andsens commented Jul 7, 2021

In the meantime folks are welcome to use the release I made:
https://s3-eu-west-1.amazonaws.com/orbit-binaries/grafana-map-panel-0.15.1.zip?AWSAccessKeyId=AKIAZVIOIP7XHYMMSIG6&Expires=1628237959&Signature=jgruQTGAsT5dF0zAixb4ZeEfx3A%3D

I cloned the repo, bumped the version, ran yarn install --frozen-lockfile, make, and then zipped it. So it's pretty easy to do it yourself (provided you have the dependencies like npx and yarn installed).

Note that the URL expires aug. 6, I assume @amotl will have released a patched version by then :-)

@amotl
Copy link

amotl commented Jul 7, 2021 via email

@wols
Copy link

wols commented Jul 13, 2021

Grafana 8.0.5
Look at Visual options > Center and zoom level:
The four fields are not usable if Fit to data disabled.

@amotl amotl changed the title Grafana v8.0.0 compatibility Grafana 8.0.0: Unknown provider: keybindingSrvProvider <- keybindingSrv Jul 16, 2021
@amotl
Copy link

amotl commented Jul 20, 2021

Hi there,

thank you very much for providing the interim release artefact, @andsens. Finally, I have been able to find some time to issue the regular release (0.16.0), see https://github.com/panodata/panodata-map-panel/releases/tag/0.16.0. We will be happy to receive any feedback how this version works.

Please note that the plugin name changed to panodata-map-panel in order to support #112.

With kind regards,
Andreas.

@amotl
Copy link

amotl commented Aug 6, 2021

Hi again,

I believe this issue has been resolved, a followup note is #122. Feel free to reopen if you need to.

With kind regards,
Andreas.

@amotl amotl closed this as completed Aug 6, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

6 participants