Wednesday, August 17, 2022
Advertisement
Firnco
  • Home
  • Cloud Computing
  • Cybersecurity News
  • Tutorials & Certification
No Result
View All Result
  • Home
  • Cloud Computing
  • Cybersecurity News
  • Tutorials & Certification
No Result
View All Result
Firnco
No Result
View All Result
Home Cloud Computing

Visualizing the Hacker Information API with HCL and SQL

July 27, 2022
in Cloud Computing
Reading Time: 6 mins read
0
Visualizing the Hacker Information API with HCL and SQL
74
SHARES
1.2k
VIEWS
Share on Twitter



Within the final episode we checked out a Steampipe dashboard that joins seek effects throughout various APIs. That metasearch dashboard is explained completely in code that blends two languages: SQL to question the APIs, and HCL (HashiCorp Configuration Language) to drift effects right into a dashboard desk.

This dashboards-as-code way leans into the infrastructure-as-code philosophy. We imagine that dashboards are some other roughly infrastructure that are meant to be explained in utility, controlled in version-controlled repositories, and deployed from repos.

On this episode we’ll take a look at a dashboard that explores pieces posted to Hacker Information. It illustrates a number of tactics wherein Steampipe can take part in software-defined workflows.

Right here’s the dashboard in motion.

And right here’s the fast get started to run it for your self.

The visualizations duvet greater than 15,000 tales since June 21. That’s far more historical past than you’ll be able to with ease slurp from the Hacker Information API in a single gulp. So the place does the historic knowledge come from? It’s within the repo!

Historical past

On an hourly foundation a GitHub Motion exams out the repo, runs Steampipe, queries for brand spanking new pieces, exports them to a CSV record, commits that record, and pushes to the beginning. So while you clone or replace the repo you get contemporary knowledge. With Steampipe and the CSV plugin put in, right here’s the way you view the dashboard.

cd ~/steampipe-samples/all/hackernews
./replace.sh
steampipe dashboard

After which discuss with https://localhost:9194. Repeat ./replace.sh at any level to tug and incorporate up-to-the-hour knowledge. The GitHub Motion, scheduled to run hourly, does the next.

  • Take a look at the repo
  • Set up Steampipe within the GitHub runner
  • Set up the Hacker Information plugin
  • Question the newest tales and ship the output to a CSV record
  • Devote the brand new CSV record and push the adjustments

I used to be overdue to the GitHub Movements celebration however I’m there now. That is any such great solution to durably acquire small snapshots!

For the ones conserving ranking, there are 3 circumstances of Steampipe on this workflow:

#1 takes the snapshots in a GitHub Motion the use of the Hacker Information plugin.
#2 builds the desk to your native Steampipe database, the use of the CSV plugin.
#3 launches the native dashboard server your browser connects to.

HCL + SQL

The Resources panel provides a picklist of domain names, and reveals tales whose URLs fit a decided on area. This is the SQL question that reads the entire URLs and extracts their domain names. The trickiest section is the common expression, however that’s true for regexes in all languages. The SQL itself is discreet and simple to grasp.

with domain names as (
  make a selection distinct
    substring(url from 'http[s]*://([^/$]+)') as area
  from
    hn_items_all
)
make a selection
  area as label,
  area as price
from
  domain names
order by means of
  area

The HCL that creates the picklist is likewise easy and simple to grasp.

enter "area" {
  width = 3
  sql = <<EOQ
    -- as above
  EOQ    
}

That’s the development all over the place: SQL to get the knowledge, a skinny HCL wrapper to drift effects right into a widget. Those two flavors of code, which in combination outline the dashboard, are born in a repo, evolve there, and deploy from there. In low-or-no-code programs the entire similar data lives in a knowledge retailer controlled by means of an app. Chances are you’ll (I as soon as did) need to export that information with a view to report the machine’s evolution in a repo. It’s higher to have it all the time there.

The purpose of low-or-no-code programs is, after all, to wrap code in tooling that unlocks the creativity of people that don’t code. There isn’t but such tooling for this HCL + SQL combo, however there will also be. Techniques explained in code are inherently pleasant to equipment that learn and write that code. The Hacker Information repo, as an example, features a whimsical instance that animates a chart by means of programmatically enhancing a dashboard record and converting sure HCL values.

Even if I didn’t use a parser for that instance, there are naturally HCL and SQL parsers that render code as knowledge. In an previous episode we confirmed how some other Steampipe plugin turns Terraform recordsdata into Steampipe tables, thus enabling a compliance checker that validates the Terraform definitions. As you construct and evolve dashboards, wouldn’t you need to validate them in the similar means? An as-code structure promises that it’s imaginable.

That mentioned, coding Steampipe dashboards in natural HCL + SQL is simple, a laugh, and wildly productive. Listed here are two of my favourite issues that make it so.

Are living enhancing

While you edit dashboard code in an editor that auto-saves, the dashboard reacts right away. As proven right here, that’s true for adjustments in each the HCL code that orchestrates the knowledge and the SQL code that fetches it.

This can be a roughly direct manipulation interface: “an way to interfaces which comes to steady illustration of gadgets of hobby in conjunction with speedy, reversible, and incremental movements and comments.” (Wikipedia)

Bret Victor is a brilliant champion of this way. On this phase of Inventing on Theory he nails the issue that direct manipulation addresses.

I’ve were given this code, and I’ve were given this image over right here, and I’ve to care for the mapping between the 2 in my head.

The longer it takes to peer the result of code adjustments, the tougher it’s to care for that mapping. Rapid comments is helpful, and too frequently unavailable. We took it with no consideration when coding the early internet, however now there may be frequently a construct step that thwarts direct manipulation.

When coding a Steampipe dashboard you get quick comments from each HCL and SQL. I’ve written numerous Postgres queries in recent times. Writing them in an atmosphere that refreshes question effects as I sort, or shows Postgres error messages after I make errors, has been transformative.

Internet sensibility

Coding Steampipe dashboards rings a bell in my memory of the early internet in different ways too. Hyperlinks, as an example, are first class voters of Steampipe dashboards, and that’s now not all the time true this present day. The Submissions panel hyperlinks usernames to some other dashboard that explores all submissions from a decided on person. All of it works simply as a internet developer would be expecting.

There’s additionally a View Supply button. Take into account View Supply? It used to topic on the internet. This present day it normally simply displays you minified line noise. However the HCL + SQL combo rings a bell in my memory of the early HTML + JS combo — in a great way! Right here’s a peek on the resources in the back of probably the most dashboard panels.

At the side of direct comments, this type of observability helped the early internet take off. You would see one thing, marvel the way it was once performed, view the supply, be informed, and imitate. Amateur internet developers can not take part in that roughly virtuous cycle. Amateur Steampipe dashboard developers can, and that bodes neatly for a thriving ecosystem.

Visualize knowledge on the velocity of concept

As a result of Steampipe extends Postgres you’ll be able to use any software to create dashboards subsidized by means of Steampipe knowledge. In the event you’re gifted with Metabase, Tableau, or some other software that connects to Postgres, Steampipe’s API-to-database-table superpower will boost up your skill to visualise knowledge from various resources in the ones environments. However in case you do take a look at dashboarding the Steampipe means, let me understand how it is going. In my very own revel in, it’s the quickest and most delightful solution to flip an concept into an invaluable dashboard.

Copyright © 2022 IDG Communications, Inc.


Tweet19

Recommended For You

Kubernetes Deployment Methods. Deploy to K8S like a professional! | via Jack Roper | Aug, 2022

August 17, 2022
Kubernetes Deployment Methods. Deploy to K8S like a professional! | via Jack Roper | Aug, 2022

Deploy to K8S like a professional!On this put up, we can delve into Kubernetes (K8s) deployment ideas and a few commonplace methods, taking a look at the benefits...

Read more

Raise and shift Home windows programs to boxes

August 17, 2022
Raise and shift Home windows programs to boxes

There’s an previous adage steadily shared through builders construction on Microsoft platforms: “How are you able to inform if a Microsoft product is in a position for high...

Read more

Kubescape boosts Kubernetes scanning functions

August 17, 2022
Kubescape boosts Kubernetes scanning functions

ARMO, developer of Kubescape, an open supply safety platform for Kubernetes, has added two new vulnerability scanning purposes to the platform.Code repository scanning and container symbol registry scanning...

Read more

AWS Direct Attach vs VPN

August 17, 2022
AWS Direct Attach vs VPN

AWS Direct Attach vs VPN AWS VPN Connection makes use of IPSec to ascertain encrypted community connectivity between the intranet and VPC over the Web. AWS Direct Attach...

Read more

7 unsightly YAML gotchas to steer clear of—and how one can steer clear of them

August 17, 2022
7 unsightly YAML gotchas to steer clear of—and how one can steer clear of them

The YAML (“YAML Ain't Markup Language”) configuration language sits on the center of many fashionable packages together with Kubernetes, Ansible, CircleCI, and Salt. In spite of everything, YAML...

Read more
Next Post
Heimdal™ Risk Looking Magazine July 2022 Version

Heimdal™ Risk Looking Magazine July 2022 Version

Leave a Reply Cancel reply

Your email address will not be published. Required fields are marked *

Related News

Answering The Issues Of CIO Turnover

Answering The Issues Of CIO Turnover

August 2, 2022
Universe – Body of workers Frontend Internet Engineer

Universe – Body of workers Frontend Internet Engineer

July 26, 2022
Sour APT and Clear Tribe Campaigns on Social Media | Cyware Indicators

Sour APT and Clear Tribe Campaigns on Social Media | Cyware Indicators

August 12, 2022

Browse by Category

  • Black Hat
  • Breach
  • Cloud Computing
  • Cloud Security
  • Critical Infrastructure
  • Cybersecurity News
  • Government
  • Hacks
  • InfoSec Insider
  • IoT
  • Malware
  • Malware Alerts
  • Mobile Security
  • News
  • Podcasts
  • Privacy
  • Sponsored
  • Tutorials & Certification
  • Vulnerabilities
  • Web Security
Firnco

© 2022 | Firnco.com

66 W Flagler Street, suite 900 Miami, FL 33130

  • About Us
  • Home
  • Privacy Policy

305-647-2610 [email protected]

No Result
View All Result
  • Home
  • Cloud Computing
  • Cybersecurity News
  • Tutorials & Certification

© 2022 | Firnco.com

Are you sure want to unlock this post?
Unlock left : 0
Are you sure want to cancel subscription?