https://github.com/postmanlabs/observability-ir
Intermediate Representation for APIs
https://github.com/postmanlabs/observability-ir
Last synced: 3 months ago
JSON representation
Intermediate Representation for APIs
- Host: GitHub
- URL: https://github.com/postmanlabs/observability-ir
- Owner: postmanlabs
- License: apache-2.0
- Created: 2021-02-11T22:58:51.000Z (almost 5 years ago)
- Default Branch: main
- Last Pushed: 2025-08-19T20:48:10.000Z (5 months ago)
- Last Synced: 2025-08-19T22:28:20.092Z (5 months ago)
- Language: JavaScript
- Size: 281 KB
- Stars: 3
- Watchers: 2
- Forks: 3
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Intermediate representation for APIs
## Contents
This repository supports the [Postman Insights
Agent](https://github.com/postmanlabs/postman-insights-agent). It contains
protobuf definitions and generator scripts for Go, Python, and JavaScript.
Generated code is checked into source control to enable the use of
native-language tooling without needing to invoke the `protoc` compiler.
## Updating the Protobuf definition
- Make the change under `proto/`
- Run `make build`
- Update
[`observability-shared-libs`](https://github.com/postmanlabs/observability-shared-libs)
with the new version of the Go package
- In `observability-shared-libs/spec_utils/ir_hash`, update `gen.go` with any
new message types, or new inner structs from oneof types. Then run `make` in
that directory to generate a new set of hash functions. (If you add a new
file, add that file to the list in `gen.go` so that it will be checked
for version mismatch.)
## Directory structure
```
proto/ # protobuf definitions
foo/ # protobuf package
...
go/ # Generated Go code
foo/
py/ # Generated Python code
foo/
js/ # Generated JavaScript code
foo/
```