News for hackers. Stuff that matters.

rorycrispin

Sure, the plugin is built on top of Scenes https://grafana.com/developers/scenes

Add all of your required data sources will well known UIDs https://grafana.com/docs/grafana/latest/administration/provi... Then you can create a query panel and update the state with the desired query SQL and data source ID like so;

    const logsQuery = new SceneQueryRunner({queries: []});
    logsQuery.setState({
        datasource: { uid: dataSourceID},
        queries: [
            {
                "datasource": {
                    "type": "grafana-clickhouse-datasource",
                    "uid": dataSourceID,
                },
                "queryType": "sql",
                "rawSql": logsQuerySQL,
    ...
        ],
    });
Grafana works really well out of the box for most use-cases. Initially the LogHouse UI was built using the out-of-the-box Grafana tools (along with the ClickHouse data source plugin which we maintain) You can get a really long way with the zero code dashboarding tools, especially with the latest plugin release (4.0) which comes with a completely rebuilt query builder which has an opinionated mode specifically for OpenTelemetry data. LogHouse exhausted the limits of the zero-code UI in a few places and it was necessary to evolve the UI from a dashboard into a Grafana Plugin. Doing so gives you much more control to build a full application using the Grafana primitives. I really like that as an SRE I can build a webapp without spending any time building UI components, instead just controlling the layout on page and declaring “this panel has the following `SELECT…` query” which is generated by some typescript function. Examples of things which we can do on top of Scenes are:

- Pick a different schema based on the query parameters. For instance we have different schemas for different applications (Keeper/Server/Generic K8s app) and the app picks the necessary schema

- Always show the full generated SQL query on the page (We like to use Grafana UI to start off and then jump into fully manual SQL for deeper analysis)

- Take one filter value (for instance, k8s namespace) and look up all of the other filters required (pod names which were live during the time period, region, cell ect.)

- Some small gadgets like enabling users to import the time range from another application URL like DataDog. Oftentimes we start by looking at metrics in another source and then want to jump into the logs.

Hey! I'm the original author of this post. I'm so excited to share our journey with ClickHouse and the open source Observability world, I'll be happy to answer any questions you may have!
The RISKS digest is a newsletter on all things computer security, and their risks to the public. It’s been going since 1985.

https://catless.ncl.ac.uk/Risks/

Beej's Guide to Network Programming

http://www.beej.us/guide/bgnet/

Re:Ask HN: Any mobile apps with interesting multi-touch UX? on Tuesday November 10, 2020 @04:27AM (#25044116)
Chwazi finger chooser [1] is a fun use of multi touch. A group of people place a finger on the phone screen and the app highlights one finger. I use this to pick the starting player for bord games.

https://play.google.com/store/apps/details?id=com.tendadigit...

Ive written a tool which does all of the but instead uses the Chocolatey package manager. Useful for centralising software updates, uninstallers ect

Chocolatey Quickstart: https://github.com/RoryCrispin/Chocolatey-Quickstart

Tannenbaum's 'Operating Systems: Design and Implementation' has a fantastic set of chapters on deadlocking, the producer/consumer problem and Contect Switching/Scheduling.