Postări

How I Get a Full Screenshot of a Grafana Dashboard (Without the Headache)

  Sometimes you need a full picture of a Grafana dashboard, not just whatever fits on your screen. It sounds simple, but Grafana doesn’t show all panels at once — some load only when you scroll to them. That’s how you end up with incomplete screenshots and missing sections. I ran into the same problem. So I built a small script that handles all the “acrobatics” for you: it opens the dashboard, figures out the real height of the page, scrolls smoothly all the way down so every panel loads, and then captures a clean, complete screenshot. You run it, give it the dashboard URL and an access token, and it takes care of the rest automatically. Why did I build it? Because I needed reliable screenshots for reports and automation. And because sometimes you really just want a picture , nothing more. The code is in the repo, easy to read and tweak: https://github.com/gdudau/grafana-screenshot

Cum fac un screenshot complet al unui dashboard Grafana (fără dureri de cap)

Uneori ai nevoie de o poză completă cu un dashboard Grafana, nu doar ce încape în ecran. Pare un lucru banal, dar Grafana nu arată toate panourile deodată , unele apar abia când le derulezi. Așa apar capturile incomplete, cu bucăți lipsă.  Am avut aceeași problemă. Așa că am făcut un mic script care se ocupă singur de toată „acrobația”:  - deschide dashboard-ul,   - își dă seama cât de mare e pagina,  - derulează calm până jos ca să se încarce toate panourile,  - și face un screenshot complet, frumos și întreg.  Îl rulezi, îi dai URL-ul dashboard-ului și un token de acces, iar restul se întâmplă automat.  De ce l-am făcut?   Pentru că voiam capturi corecte pentru rapoarte și automatizări. Pentru că uneori vrei doar  o poză .  Codul e în repo, ușor de citit și modificat.  https://github.com/gdudau/grafana-screenshot

Pentaho Saiku CE plugin - Change Asterisk CrossJoin in CrossJoin Classic

Saiku plugin is (maybe) the most used plugin in Pentaho CE. I like this plugin, but in 3.x version the developers, use for CrossJoin the asterisk (*) operator as a shorthand for crossjoin. It's easy, clean, but when i put more then 4 dimensions the query takes to much time against the classic CROSSJOIN(). See http://jira.pentaho.com/browse/MONDRIAN-2284 To achieve old functionality I've modified 2 files in saiku-query library: src/main/java/org/saiku/query/NodeConverter.java and src/main/java/org/saiku/query/Olap4jNodeConverter.java NodeConverter.java protected static CallNode generateCrossJoin(List selections, boolean nonEmpty, boolean asterisk) { String crossJoinFun = "CrossJoin"; ParseTreeNode sel1 = selections.remove(0); if (sel1 instanceof MemberNode) { sel1 = generateSetCall(sel1); } if (selections.size() == 1) { ParseTreeNode sel2 = selections.get(0); if (sel2 instanceof MemberNode) { sel2 = generateSetCall(sel2); } return new C...

SmokePing integrate with Observium

Observium is a low-maintenance auto-discovering network monitoring platform supporting a wide range of device types, platforms and operating systems including Cisco, Windows, Linux, HP, Juniper, Dell, FreeBSD, Brocade, Netscaler, NetApp and many more. Observium focuses on providing a beautiful and powerful yet simple and intuitive interface to the health and status of your network. SmokePing keeps track of your network latency: Best of breed latency visualisation. Interactive graph explorer. Wide range of latency measurement plugins. Master/Slave System for distributed measurement. Highly configurable alerting system. Live Latency Charts with the most 'interesting' graphs. Free and OpenSource Software written in Perl written by Tobi Oetiker, the creator of MRTG and RRDtool

JsonExport - plugin to generate XLS/XLSX from EXTJS Grid

JsonExport is a helper class who help you to generate data to use with PHPExcel to generate XLS/XLSX files. Is based on Ext.ux.grid.Printer . I create this plugin because i needed to export xls/xlsx from a ExtJS grid generated from a json feed. JsonExport are two parts: client side (JsonExport.js) and server side (export_xls.php) To setup you must define a button in your with a handler and an url to server-side file (export_xls.php) Let's start with an example. 1. Setup path to Ext.ux location in your javascript. Ext.Loader.setConfig({ enabled: true, paths: { Ext: '.', 'Ext.ux': '../ux' } }); 2.  Add Ext.Require Before the Grid code. Ext.require([ 'Ext.ux.grid.JsonExport' ]); 3. Create your grid. var grid = Ext.create('Ext.grid.Panel', { store: store, stateful: true, stateId: 'stateGrid', columns: [ {text: 'Company',data...

Alfresco Add User In Sites with cURL

Sometime you need to add a user or more to one or many site in your Alfresco Share without web interface or without sending invitation. Every site have some predefined roles:  "SiteManager", "SiteCollaborator", "SiteContributor", "SiteConsumer" . (http://docs.alfresco.com/community/references/permissions_share.html) Prerequisites: 1. site ID 2. username(s) 3. role type 4. cURL I want to add an user test_user in site "My Test Site" with site ID " mytestsite " with Consumer role: curl -X POST -uadmin:password "http://alfresco:8080/alfresco/service/api/sites/ mytestsite /memberships" -H"content-type: application/json" -d "{"role":"SiteConsumer","person":{"userName" : " test_user "}}" If all is OK the server respond with: {         "role": "SiteConsumer",         "authority":...

Multiple selection in Pentaho CDE Dashboard, part 1

Imagine
There are many ways to create a selector with multiple selections în Pentaho 5 with CDE, but this one works well for what i want.