GitXplorerGitXplorer
a

trixx

public
41 stars
4 forks
1 issues

Commits

List of commits on branch master.
Unverified
03bfd7c67901249458fc3a5964aa2327c7e806a8

updated githacking extension to yaml

aaaronfeng committed 14 years ago
Unverified
f000b5ecdbafc2c6bb8fd9681b60263392dbe443

githacking test yml file

aaaronfeng committed 14 years ago
Unverified
360f9477811c5c3061828111062a206278abb01d

removed everything except for the clojure part

aaaronfeng committed 14 years ago
Unverified
a33f2e681471f3d1fa58cfc01e1e461692a13f1d

ATTENTION: updated README: deprecating trixx web, service, and keeping only Erlang interop (written in Clojure) in about a week (2/1/10)

aaaronfeng committed 15 years ago
Unverified
461168e990cfc91a7006ec124647609e76065561

added change-password

aaaronfeng committed 15 years ago
Unverified
e6656fa8262edcea5a1dcbd58015bd4b8e060c47

found a bug with reading erlang cookie from home directory adds a newline in the end

aaaronfeng committed 15 years ago

README

The README file for this repository.

"Yo rabbit, Trixx are for hackers"


ATTENTION:

I am actually deprecating most of this project due to lack of time.
Trixx as it stands right now, consists of 3 componments: web, service and Erlang interop. I am removing everything except the Erlang interop which is written in Clojure. The Clojure part seems to be working fine, and can serve as an example to anyone interested talking to Erlang from the Java via JInterface.

If you want to see what the monitoring interface looked like before I removed it, feel free to fetch it from git history.

If anyone is interested in taking over the project, please fork it.


The goal of Trixx is to build an administration and monitoring tool for RabbitMQ. Trixx consists of 3 componments: Trixx web, Trixx service, and Trixx Erlang.

Trixx Erlang is used to communicate with Erlang nodes to extract RabbitMQ information.
Trixx service returns RabbitMQ information as JSON. Trixx web consumes JSON and renders the administration interface.

Features of Trixx:

  • All the features of rabbitmqctl + more via a web interface
  • User authentication
  • More coming soon

Since Trixx directly communicates with Erlang nodes, it requires JInterface. Trixx is using Erlang 6.5 at the time of this writing.

Building

To build from source:

ant fetch-deps compile-rabbit-server jar

Note that we've included a specific version of RabbitMQ at this time. Erlang must be installed so it can be built. RabbitMQ will be built by the compile-rabbit-server target.
To compile rabbit server Python 2.5 or greater must be installed along with simplejson.py.

Then in separate terminals, first run the rabbit server:

ant run-rabbit

Then the trixx server:

ant run-trixx

Open your browser to any of the following urls to incoming JSON:

GET http://localhost:8080/exchanges/:vhost - :vhost is optional, default to "/"
POST http://localhost:8080/exchanges - params: user, password, name, type, vhost, durable GET http://localhost:8080/queues/:vhost POST http://localhost:8080/queues - params: user, password, name, vhost, durable GET http://localhost:8080/bindings/:vhost GET http://localhost:8080/vhosts POST http://localhost:8080/vhosts - params: name GET http://localhost:8080/connections GET http://localhost:8080/users/:user/permissions - :user is the rabbit user name

GET http://localhost:8080/users PUT http://localhost:8080/users - params: name, vhost, config_permission write_permission, read_permission POST http://localhost:8080/users - params: name, password, vhost, config_permission write_permission, read_permission DELETE http://localhost:8080/users/:user

GET http://localhost:8080/rabbit/status PUT http://localhost:8080/rabbit/start PUT http://localhost:8080/rabbit/stop PUT http://localhost:8080/rabbit/reset

POST http://localhost:8080/sessions/authenticate - parmas: name, password

To run the Ruby Web Management Console:

ant run-www

Navigate to http://localhost:3000/ and login with RabbitMQ user/password.

Dependencies

We are making an effort to ensure that Trixx and its dependencies are java 1.5 compatible. If you are working on Trixx and would like to submit changes back to the core repository, please ensure that your code is 1.5 compatible.

Contact

If you have any questions/problems/suggestions with Trixx I can be contacted in the following ways:

Email: aaron.feng.blog@gmail.com Twitter: aaronfeng Blog: leftrightfold.com