Comments (4)
Talked about this with @whitleykeith on slack. Since backpack already collects all the data prior to any run we could simply have it write its json output to a shared storage or just the bits we care about to redis and then have snafu read it in. It would be a pretty trivial change to backpack and snafu then. thoughts?
from benchmark-wrapper.
My only concern with backpack is that it seems like a pretty heavy dependency. Would the automotive team be able to use backpack for environment information?
Also, what sort of information are we looking to collect?
I like the idea of having snafu/environments
for a location of Python modules that pull env metadata. Another idea that might work, since some env collection could be done in straight-up bash, is the following:
- Create
snafu/environments
as a collection of tiny executable scripts which take no arguments and output environment data in the form ofKEY=VALUE
, with each key-value pair on a separate line. If no key-value pair was found in the output, or if the return-code is non-zero, then assume the script isn't applicable for the environment. - Create a module called
environment.py
which runs each of these bash scripts one by one, collects the output, and saves the key-value pairs to a dataclass which we can then export.
From this perspective, we can do metacollection using bash, perl, python, whatever. It'll be super lightweight, easy to maintain, easy to test and have minimal external dependencies.
But at the disadvantage that we now have to maintain code that does the same thing as backpack.
from benchmark-wrapper.
My only concern with backpack is that it seems like a pretty heavy dependency. Would the automotive team be able to use backpack for environment information?
They would never use backpack -- backpack is specific to OCP. They would use the underlying Ansible roles which is Stockpile.
Also, what sort of information are we looking to collect?
I like the idea of having
snafu/environments
for a location of Python modules that pull env metadata. Another idea that might work, since some env collection could be done in straight-up bash, is the following:
- Create
snafu/environments
as a collection of tiny executable scripts which take no arguments and output environment data in the form ofKEY=VALUE
, with each key-value pair on a separate line. If no key-value pair was found in the output, or if the return-code is non-zero, then assume the script isn't applicable for the environment.- Create a module called
environment.py
which runs each of these bash scripts one by one, collects the output, and saves the key-value pairs to a dataclass which we can then export.From this perspective, we can do metacollection using bash, perl, python, whatever. It'll be super lightweight, easy to maintain, easy to test and have minimal external dependencies.
But at the disadvantage that we now have to maintain code that does the same thing as backpack.
IMHO This is a step backwards. We already do this today. Check out Stockpile and Scribe.
from benchmark-wrapper.
My concern with Scribe was that it seemed like a large dependency, which was where that bash idea came from, but if we are willing to do use it then all the merrier. My bad on the confusion.
from benchmark-wrapper.
Related Issues (20)
- Improve documentation for supported wrappers HOT 2
- Add CLI Option to Purge Empty Fields in ES
- Determine and Implement Versioning Schema
- ElasticSearch Unified Index HOT 3
- Addition of Collectors and Sample Abstraction Request HOT 2
- Create Signal Protocol HOT 4
- Extend Common Benchmark Fields HOT 4
- Quay trigger sometimes fails HOT 2
- snafu base image HOT 16
- 2 things I don't like about current cache dropping HOT 1
- backlog of ES results results in failure to get yielded results to ES?
- Inconsistent Benchmark and Quay Image Names HOT 10
- Can the grafana dashboard metric percentiles of bandwidth/latency in the fio ES index can use compare different run? HOT 5
- run_snafu does not protect against bad JSON data in certain failures HOT 2
- FIO and SF failed to run HOT 8
- Uperf test fails but does not exit with error HOT 2
- Elasticsearch: credential authentication HOT 5
- centos image resources .repo points to wrong URL
- scale_openshift_wrapper should expose parameters to target machineset from different labels HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from benchmark-wrapper.