axway / agents-apigee Goto Github PK
View Code? Open in Web Editor NEWAgents for connecting Apigee to Axway Amplify Central
License: Apache License 2.0
Agents for connecting Apigee to Axway Amplify Central
License: Apache License 2.0
Hi,
Context :
I have an API Product (apigee) with a quota already set.
This product is discovered and a new Product (Foundry) is created from it.
This new Product has a plan with an unlimited quota.
Issue :
When I subscribe to the plan and request access, no clone of the original API Product (apigee) is made and the original API product is linked to the Apigee application. As a consequence the Application inherits the original API Product quota instead of being unlimited.
Proposal :
Clone the API product also for unlimited quotas.
Thanks,
Guillaume
When the first time I asked credentials, after the access request, my credentials remained in PENDING state and the agent logs shows the following:
{"level":"info","message":"processing access request for api APIGEE-PetStore-OAuth to app pet-shelter","time":"2022-09-26T21:10:46-07:00"} {"level":"info","message":"creating api product APIGEE-PetStore-OAuth-freemium-2 for api APIGEE-PetStore-OAuth","time":"2022-09-26T21:10:47-07:00"} {"level":"info","message":"provisioning credentials for app pet-shelter","time":"2022-09-26T21:10:50-07:00"} {"level":"info","message":"processing access request for api APIGEE-PetStore-OAuth to app pet-shelter","time":"2022-09-26T21:10:46-07:00"} {"level":"info","message":"creating api product APIGEE-PetStore-OAuth-freemium-2 for api APIGEE-PetStore-OAuth","time":"2022-09-26T21:10:47-07:00"} {"level":"info","message":"provisioning credentials for app pet-shelter","time":"2022-09-26T21:10:50-07:00"} {"level":"error","message":"subscription provisioning - at least one product access is required for a credential","time":"2022-09-26T21:10:51-07:00"} {"component":"serviceClient","level":"error","message":"failed to link sub resource state to resource first-apigee: [Error Code 1120] - error making a request to Amplify: status - 400, title - Validation error, detail - [#/name: is not a valid enum value]","package":"sdk.apic","time":"2022-09-26T21:10:51-07:00"} {"action":"CREATED","component":"credentialHandler","error":"[Error Code 1120] - error making a request to Amplify: status - 400, title - Validation error, detail - [#/name: is not a valid enum value]","level":"error","message":"error creating subresources","name":"first-apigee","package":"sdk.agent.handler","resource":"Credential","sequence":2782324,"time":"2022-09-26T21:10:52-07:00"}
Hello,
DA agent version 1.1.31
Steps to reproduce:
Publish a new specification "sno3-swagger-specification"
Create a new proxy using the "sno3-swagger-specification"
Publish the proxy
Expected result:
Proxy is discovered and a new service is created on the service registry
Actual result:
Proxy is not discovered. Da needs to be rebooted to have the proxy discovered.
Thanks,
Sovanna
Hello,
Traceability agent should have configuration parameter for :
Currently, those are hardcoded in the apigee_traceability_agent.yml file and so hardcoded in the docker image.
Thanks,
Sovanna
Private Apigee have classic Edge which doesn't have feature to store or fetch API-Specs from below mentioned URL.
Agents is failing with http 404 as the URL doesnt exists for private apigee :
{"component":"httpClient","duration(ms)":2,"id":"60431a0a-6307-47b7-9902-0e949ab976be","level":"trace","message":"request succeeded","method":"GET","package":"sdk.api","received(bytes)":47,"status":404,"time":"2024-01-30T15:47:06+08:00","url":"http://{host}:{port}/organizations/{org-name}/specs/folder/home"}
{"component":"pollSpecs","error":"invalid character '\u003c' looking for beginning of value","level":"error","message":"getting specs","package":"apigee","time":"2024-01-30T15:47:06+08:00"}
{"component":"baseJob","job-id":"a1431ad5-769e-45f3-a60e-8e7c8ba8f29d","job-name":"Poll Specs","level":"error","message":"[Error Code 1601] - Error in interval job a1431ad5-769e-45f3-a60e-8e7c8ba8f29d execution: invalid character '\u003c' looking for beginning of value","package":"sdk.jobs","time":"2024-01-30T15:47:06+08:00"}
references:
Apparently, API-specs is a mandatory resource for agents to function and integrate successfully, can we allow agent to read/load the api-specs from a local folder ?
Hi,
We have an issue with v0.1.12 of the Apigee DA that we are unable to reproduce with previous agents versions.
The agent startup sequence fails and displays the command usage as shown below.
2023-05-11T11:50:33.568+02:00 Error: Config File "apigee_discovery_agent" Not Found in "[/]"
2023-05-11T11:50:33.569+02:00 Usage:
2023-05-11T11:50:33.569+02:00 apigee_discovery_agent [flags]
2023-05-11T11:50:33.569+02:00 Flags:
2023-05-11T11:50:33.569+02:00 --envFile string Path of the file with environment variables to override configuration
2023-05-11T11:50:33.569+02:00 -h, --help help for apigee_discovery_agent
2023-05-11T11:50:33.569+02:00 --pathConfig string Path to the directory containing the YAML configuration file for the agent
2023-05-11T11:50:33.569+02:00 --status Get the status of all the Health Checks
2023-05-11T11:50:33.569+02:00 --synchronize Run the sync process for the discovery agent
2023-05-11T11:50:33.569+02:00 -v, --version version for apigee_discovery_agent
2023-05-11T11:50:33.569+02:00 Config File "apigee_discovery_agent" Not Found in "[/]"
The agent runs as a task in an AWS ECS cluster and is deployed through cloudformation using the following command arguments :
ContainerDefinitions:
- Name: ampify-discovery-apigee-agent
Image: !Sub ${DiscoveryAgentImageURI}:${DiscoveryAgentVersion}
Command:
- "--httpprofile"
- "--memprofile"
- !Sub /efs_output/${DiscoveryAgentLogGroupName}-mem.out
#- "/efs_output/mem.out"
Has something changed in v0.1.12 input command options compared to v0.1.11 ? The same command options work fine in previous versions of the agent and we haven't made any change to our cloudformation template between versions.
Note : we have not yet tried tested v0.1.12 of the traceability agent but the same issue could probably exist.
Thanks for your support
Guillaume
Errors from log
{"level":"error","message":"failed to create endpoints for 'SNO APIGee Petstore': [Error Code 1160] - error getting endpoints for the API specification: could not parse url: /api/v3","time":"2022-06-13T13:22:16Z"}
{"level":"error","message":"failed to create endpoints for 'SNO APIGee Petstore 3 product': [Error Code 1160] - error getting endpoints for the API specification: could not parse url: /api/v3","time":"2022-06-13T13:22:32Z"}
Hi,
We have an environment with almost 400 API proxies.
After a few hours the DA has been up and running, the error below appears in the log and the agent becomes "unhealthy" until it is manually restarted.
Full log available on demand
Can you please help understand what causes this concurrent access ?
DA v0.1.21
Thanks
The status check in the auth job is called many times repeatedly hitting the apigee login service. Update this to only make the API call on a less frequent basis and before token refresh.
Hi,
We noticed that the API service endpoint from the discovered proxies use the "http" scheme instead of "https".
Example :
When we look at the API Proxy configuration we can see that the deployed environment uses an https endpoint
In the HTTP Proxy connection, we can see that a "secure" virtual endpoint is referenced
We can also see that the "secure" virtual host is defined and uses tls
In the agent logs, we didn't see any http request reference to the "secure" virtual host, only the "default" one using http.
Could you please help ?
Thanks,
Hi,
After upgrading the apigee Traceability agent from v0.1.11 to v0.1.13, we notice several errors in the container startup sequence, leading to a crash.
TA v0.1.11 works fine. No configuration change has been made aside from updating the image.
I have captured logs of the the whole startup sequence in trace level. For security reasons, I will not directly attach the logs to the issue but you can request them to me via teams.
Could you please investigate the logs ?
Thanks, Guillaume
We need agents to support Basic Auth and http for integration with apigee management Api. Oauth2 is not enabled by default for Edge for the private Cloud.
Sample api request to fetch list of api products :
curl --location 'http://{host}:{port}/v1/organizations/{org_name}/apiproducts'
--header 'Accept: application/json'
--header 'Authorization: Basic ABCDEFGHxxxxx=='
Reference document to Apigee Edge Management APIs: https://apidocs.apigee.com/operations
There are sample requests and responses provided by Apigee which can be referenced in the link. Agents should be able to adapt to these api's in order for successful integration.
We would be able to integrate agents and Private Cloud Apigee with ease.
Hi,
In proxy discovery mode, we noticed that proxies with a reference to a spec (association.json) were correctly discovered as "oas" services.
However, it appears that, without altering any of the already discovered proxies/specs, subsequent API service revisions are created with an "unstructured" format as shown below :
The agent sdk has been updated to allow the saving of agent attributes to a subresource rather than in attributes visible on the UI.
This agent needs to be updated to migrate its technical attributes over by registering it with the SDK
To reproduce:
Suggested fix:
Do not create any api service on Central until a pec can be retrieved from Apigee
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.