Comments (2)
I can have a look at this one too. It seems like
- Need to assign a workflow index during creation of the workflow. (e.g., mfnwf-) (see below)
- ManagementService log retrieval needs to use the workflow's index.
- ManagementService log clearing now can really delete the index and re-create it. (see below)
- The SandboxAgent needs to update the fluent-bit configuration to use the workflow index.
Regarding clearing the logs, does elasticsearch treat these two indices differently via some internal versioning (the one deleted and re-created with the same name)? If not, this may not do the intended job of actually deleting the logs because the old log entries would still be retrieval with the 'newly' created index that still has the same name. Then we may need to keep the version of the index in the workflow metadata and pass that to the sandbox agent when starting.
Regarding index creation, an alternative method could be to create the index the first time a workflow gets deployed, or a sandbox starts up (i.e., from within the sandbox agent). However, I think it is better to do it at the workflow creation (i.e., when the user adds a new workflow) for the following three reasons:
- The deletion of the workflow index can only happen when the workflow is deleted. One can also choose to do it during the undeployment of the workflow, but that would make the logs inaccessible for an undeployed (but not deleted) workflow. Users may still want to access the logs even if the workflow has been undeployed. Furthermore, if the deployment itself fails, having the logs would be helpful to debug the problem.
- If the index creation is done during startup of the sandbox, this may add a small overhead for the sandbox startup. If additional instance of the sandbox are starting (e.g., for scaling), the creation of the index, even if it is idempotent, would still do redundant a job.
- The symmetry of the creation/deletion of the index following the creation/deletion of the workflow.
Comments, thoughts? Did I miss any other modification that needs to be made?
from knix.
Branch feature/individual_indices_for_workflow_logs.
Tasks 1, 2, 4 are finished.
Task 3 is TODO.
from knix.
Related Issues (20)
- CentOS support for ansible deployments HOT 2
- Caching of downloaded function dependencies
- Shutting down sandboxes may hang HOT 5
- Upgrading KNIX breaks the datalayer HOT 1
- workflow logs not available due to elasticsearch sharding problem HOT 1
- test asl_Map hangs with maxconcurrency values != 0 HOT 3
- allow user-supplied data be included in the trigger from TriggersFrontend
- bare metal installation fails due to missing dependencies HOT 22
- error when deploy the knix on a host machine HOT 5
- Does it mean I deploy successful? HOT 1
- error when workflow.excute. requests.exceptions.HTTPError: 405 Client Error: Not Allowed for url: http://XXXX:32777 HOT 10
- knix can not support parallel states. HOT 6
- Error when executing java function with maven dependency of Gson HOT 1
- Handling of client context for remotely handled messages HOT 4
- Provide more detailed error logs when attempting to test functions
- Triggers SDK update (storage, message queues, timers) HOT 1
- Triggers API object update for Java (storage, message queues, timers) HOT 5
- Recovery manager
- KNIX GPU monitoring/accounting capabilities
- Execution log entries get disordered HOT 2
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 knix.