Skip to content

/metrics/find is not compliant with what graphite-web expects #30

@xneo64

Description

@xneo64

I've been trying to integrate carbonserver + carbonzipper with graphite-web, and it seems that the response by carbonserver for the /metrics/find query made towards CLUSTER_SERVERS by graphite-web is incompatible with the equivalent response graphite-web issues:

In the example below, the receiver on port 8080 is graphite-web and 8081 is carbonserver. The same happens when both queries are issued in 'format=pickle' instead of json

$ curl "bcarbon00:8080/metrics/find/?local=1&format=treejson&query=%2A"
[{"text": "carbon", "expandable": 1, "leaf": 0, "id": "carbon", "allowChildren": 1}, {"text": "mlt3", "expandable": 1, "leaf": 0, "id": "mlt3", "allowChildren": 1}, {"text": "mlt3-ppc1", "expandable": 1, "leaf": 0, "id": "mlt3-ppc1", "allowChildren": 1}, {"text": "mlt3-ppc2", "expandable": 1, "leaf": 0, "id": "mlt3-ppc2", "allowChildren": 1}, {"text": "mlt3-ppc3", "expandable": 1, "leaf": 0, "id": "mlt3-ppc3", "allowChildren": 1}]
$ curl "bcarbon00:8081/metrics/find/?local=1&format=json&query=%2A"
{"name":"*","matches":[{"path":"carbon","isLeaf":false},{"path":"graphite.db","isLeaf":false},{"path":"mlt3","isLeaf":false},{"path":"mlt3-ppc1","isLeaf":false},{"path":"mlt3-ppc2","isLeaf":false},{"path":"mlt3-ppc3","isLeaf":false}]}

The request issued by graphite-web is in pickle format, but I've shown the output in json here for readability. The actual request is made in pickle, and the response by carbonserver causes graphite-web to complain and fail to parse.

I know there's carbonapi, but there are some other separate issues there which are currently impeding me from switching to it fully.
Am I doing this wrong? I If so please advise, I'd really like to migrate to carbonserver/zipper!

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions