Skip to content

Latest commit

 

History

History

graphing

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Generating artifact graphs

This directory holds content relating to the Graphing SAP Enterprise Messaging Artifacts Hands-on SAP Dev miniseries. The miniseries is about visualizing SAP Enterprise Messaging artifacts (topics, queues, webhooks and subscriptions) using Graphviz and a bit of shell scripting.

Tools

Beyond what's been described already in the main README file for this repository, here's a list of tools used in this miniseries:

  • Graphviz - Graph visualization software; this includes the utilities such as dot that we use to process dot language files and produce graph output

  • entr - Event Notify Test Runner; this is a very useful utility (similar in some ways to nodemon, but more generic) that we use to automatically re-process dot language files when they change

  • Tab Reloader Chrome extension; we used this in Part 1 of the miniseries to auto-refresh the graph image we were generating

Progress

In Part 1 we manually created the test.dot file contents (starting out from one of the examples), intending to work out how to represent the artifacts in the instance of our Enterprise Messaging service running on SAP Business Technology Platform. Using the Graphviz dot utility we generated a PNG representation of the graph in test.png:

the artifacts, visualized, in a PNG representation of the graph described in the dot language file

We wrapped the call to dot in a shell script godot, for two reasons:

  • to be able to call it easily from the context of entr
  • to explore the various node, edge and graph attributes available to us, via -N and -G switches, initially.

In Part 2 we started to build a little script graph to read and process the management API call results, taking the first steps towards building the content of the type of dot definition we need (as illustrated in test.dot. We started our first Awk script queues_topics.awk and finished the live stream hour with an exciting cliffhanger - a basic associative array is no good for the multi way queue/topic relationship. Dun-dun-duuuun!