A Browser Copilot that empowers the usage of applications that use Apache Skywalking as an observability platform.
Currently, this project only covers some basic scenarios. If you are interested in helping to evolve it, we are open to contributions.
- 🤖 Automatic activation of the agent when the configured application is accessed in a browser.
- 🚨 Proactive notifications of live alerts.
- 🕵️♂️ Proactive report of traces generated from the application in the active browser tab.
- 🗺️ Provide services topology diagram.
- 🧾 Provide a table of the services and their associated metrics.
- 📉 Generate charts of metrics like response time, error rate, load, Apdex, and message queuing metrics.
- 🤔 Ask any question about displayed information.
- ➕ More to come!
devbox install && devbox run installSet OPENAI_API_KEY with proper value in .env
Start Postgres:
devbox run postgresTo update to the latest version of the browser-copilot submodule, you can use
devbox run update-gitTo update to the latest dependencies of the Python project:
devbox run update-pythonTo add new dependencies to the Python project:
poetry add XTo generate new DB migrations due to changes in the database.py module:
devbox run new-migration "description"To run DB migrations against the local database:
devbox run migrationsThe app automatically updates the database with migrations when the Postgres service is started with devbox
To update the Skywalking showcase run:
devbox run update-showcaseTo try the copilot locally, try Skywalking showcase.
This project already includes a tuned version of the showcase. You can build it with devbox run update-showcase and run it with devbox run showcase.
This will spin up the Skywalking showcase locally with minimum services and memory required, as well as showcase app frontend access from host and English song names.
Here is a diagram of the deployed infrastructure:
- To access Skywalking frontend go to
http://localhost:9999. You can now explore information collected by Skywalking on the showcase sample services.
To stop the showcase, you can run
devbox run stop-showcase.
devbox run agentNote: The agent is configured by default to connect to http://localhost:9999 to the Skywalking server and auto-trigger the copilot when the application under test is located at http://localhost:9091. If you want to try it with another Skywalking instance and application instance, change the .env file accordingly.
devbox run browserNow, if you open a new tab and navigate to the configured application monitored by skywalking (http://localhost:9091/index.html) the copilot should automatically activate, and you can start interacting with it.
