softeng-heigvd / iflux-server-node Goto Github PK
View Code? Open in Web Editor NEWNode.js implementation of the iFLUX APIs
License: MIT License
Node.js implementation of the iFLUX APIs
License: MIT License
It should not be possible to create an actionTarget or an eventSource if the configuration is missing and the template requires a valid configuration.
It is also possible that the update is concerned by this issue.
Doing a PATCH does not update the transformations.
It is not possible to use an event source or an action target in a different organization.
A public attribute should be set on them to be able to use in rules in different organization.
It's seems that sometimes deleted rules are still evaluated by the rule engine.
Enable /Disabled rule are probably impacted.
To reproduce
Expected : Rule is NOT evaluated
What happen : Rule IS evaluated
It seems there is an issue when we update the type in eventType or actionType (potentially the same issue). The type is not updated and the server does not return any response.
At least, add a unique constraint on organization_id, user_id to avoid corrupting the data.
During the evaluation process, the rule ID is lost. Once it is done, the evaluation process is corrupted and only the first matching rule is done correctly.
It seems that if an eventTypeId is specified for a transformation, its sample definition does not require an eventTypeId as it cannot be a different one from the defined.
The problem occurs when we update the configuration of an actionTarget (probably also when performed on eventSource).
The call is not done to the remote system. The log info appears: "There is nothing to configure. Configuration URL is missing."
The rules are not properly deleted in the ruleEngine.
Currently, there is no proper handling of the unique constraint with the names of the different models.
There is no scoping involved in the unique constraint checks where it should be the case.
I have a doubt about that.
The description of the conditions and the transformations are not present in the response of GET rules/{id}
It's currently not possible to execute authenticated actions.
The code is not updated to the latest field names.
Current:
configuration: {
callbackUrl: '',
callbackToken: ''
}
should be replaced by:
configuration: {
url: '',
token: ''
}
It seems that the queries used to retrieve the templates does not take care of the scoping depending the way templates are retrieved.
There is little changes required to make the API easier to use.
Make an API to be able to validate a rule with an event. This will enforce how a rule is evaluated and which transformations are applied.
Private event source template created :
{
"id": 4,
"name": "novaserver",
"public": false,
"organizationId": 5
}
GET eventSourceTemplates/4
--> Possible to retrieve event source tempalte
GET eventSourceTemplates/organizationId=5
--> Possible to retrieve event source template
GET eventSourceTemplates
-> Event source template does not appear on the collection
User used is part of the organization.
It seems that the converter used is not the correct one and then the functions called on it are not present.
When using PATCH on /eventSources/:id or /actionTargets/:id, the configuration is never updated where it should be.
Investigate why the event is saved when the matched event is not saved.
{ [Error: MapperParsingException[failed to parse [rule.conditions.eventType]]; nested: ElasticsearchIllegalArgumentException[unknown property [id]]; ]
status: '400',
message: 'MapperParsingException[failed to parse [rule.conditions.eventType]]; nested: ElasticsearchIllegalArgumentException[unknown property [id]]; ' }
Maybe there is a limitation on the name ID multiple times present in the data.
This modification will simplify the understanding of the system.
Without this condition, any transformation configured in a rule will be applied. Then, we should ensure the evaluation for the transformation of an event to the action body will not break the rule evaluation.
For the moment, the schemas are mandatory even if a valid schema URL is provided.
The schema attribute should be mandatory only if the URL is not reachable or the URL is not a valid JSON Schema.
In fact, if the URL is a valid Schema, it should be downloaded and set to the event/action type schema.
Currenty, the model from the database are given directly to the expression evaluation.
Reduce the data available to the expressions to avoid exposing configuration or such critical data in the expressions.
There are several queries that does not return the correct result expected and where the optimization is not done correctly.
Currently, only the rules can be deleted.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.