Changelog
- 285e6e5 -t was apparently introduced in 4.1
- abaed2b Ability to pass in -n and -N params to varnishstat, these can be important for pro users. Default on 2 second timeout so queries cannot hang for a long time.
- 4d2c382 Add -docker-container-name to signal we should exec varnishstat in a container with 'docker exec '.
- 954bb8f Add go module support. This makes easier for go novices to build this project without needing to setup GOPATH.
- bece0a4 Add healthcheck endpoint (#6)
- 4133f3a Add my newly updated grafana dashboad to the repo for people to download and use. Fixes jonnenauha#17.
- bb870f9 Add script for cross-platform binary-building. update gitignore.
- dea6207 Add sha256sums.txt for build and release files. Fixes jonnenauha#26.
- 2855655 Add support for Varnish >= 5.2 that changed the JSON output format. Add more tests. Add tests to scrape test json files.
- bc49627 Add travis-ci config.
- 206bc7e Add troubleshooting section to readme.
- baa20d9 Add varnish_version metric with const labels.
- de29321 Add verbose to go build in travis.
- bf174c9 Add vscode settings and build/test task defines.
- fee9a10 Added an option for whether to import go runtime metrics also (jonnenauha#22)
- 19bcc7b Allow to specify alternative path to varnishstat (jonnenauha#19)
- 7277127 Apply suggestions from code review
- 17e9cdb Backend identifier also seems to have changed in 4.1 not in 4.0
- 75fbd0d Change id to server (v3 ip:port, v4 uuid) for backends.
- 36129b6 Change params to -n -N so they are familiar to varnish users.
- 9bb5843 Changelog update.
- 80dd76a Clean backend name if beginning with reload_ (jonnenauha#56)
- 1096416 Cleanup docs.
- 4e96232 Create ISSUE_TEMPLATE.md
- 2909e5b Create changelog
- 526e955 Credit @nipuntalukdar
- 5859c3d Deprecate -no-exit and add -exit-on-errors. This essentially flips the default behavior as it always should have been for a long running HTTP server. If you pass -no-exit a deprecation warning is printed and the app behaves as before.
- a930ff4 Doc and typo fixes.
- 054452c Doc fixes, code cleanup. Make Collect safe for concurrent access.
- 936d67a Don't group totals with label as it breaks aggregation (thanks Brian).
- e15b11e Don't return a 400 for
/(jonnenauha#15) - a966fee Don't supply a default host to bind to, just port is good for now. Empty string in golang means bind to all interfaces.
- bfe78ec Dont move MAIN. grouped metrics into backend_, this creates a confusing varnish_backend_req without and with labels. Marks certain metrics as counters that can only go up.
- d289b7a Dont use metric after all, if server is restarted all values can go go down as well.
- 8c77873 Enable back varnish live metrics tests.
- 8a37d3a Enable go module based builds on travis.
- 2a5daa5 Fix Varnish version reporting (jonnenauha#38)
- 502b063 Fix bug in VBE.xxx metrics. The label detection was bad and failed to parse certain UUID based identifiers (prefixed ones). This caused to fallback to 'id' label. If the scrape contained both 'backend' + 'server' labeled and 'id' labeled metrics, the varnish server reports errors. For a metric name, all need to have the same amount and named labels. Now if server label cannot be parsed it will be set to 'unkown' and the full ident set as 'backend'.
- ae77152 Fix flag default value copy paste error.
- 67294c8 Fix issue 57 - errors on VCL reload because of duplicated counters
- 86fc1b0 Fix issue 57 - remove const vbeReloadLength
- 9893d70 Fix prometheus/golang_client usage (jonnenauha#45) (jonnenauha#46)
- 2412e63 Fix reading flag to determine gauge and counter type for exported metric. Closes jonnenauha#40.
- f0f90fc Fix tests. Go 1.13.x no longer allows init() to call flag.Parse() as it breaks 'go test'.
- 3dc3876 Fix travis build config warnings and deprecations
- f844600 Fix zip to tar.gz on windows release file deployment.
- abeb459 Fixes metric names and missing labels for file cache metrics (jonnenauha#54) (jonnenauha#55)
- 3104d72 Follow prom exporter conventions in cmd line param naming. Reserved and publicly announced port 9131 at the wiki https://github.com/prometheus/prometheus/wiki/Default-port-allocations Make all paths except configured metrics path return 400 Bad Request for snooping eyes. Dont hint where the metrics page is publicly if user wants to make the metrics path obscure on purpose.
- 6a7a8d4 Forgot one new feature from changelog. Silence tar creation.
- 835e360 Group s_fetch as main_fetch with 'total' label. Change label key from 'code' to 'type'.
- ba55a41 Health endpoint sanity check (#7)
- 0f0e3e2 I'm abandoning the docker image idea. I realized the varnishstat command ofc is not available from the host system.
- efc5b28 Implement parsing metrics information for both varnishstat -l -j modes. Implement tests for varnish 3 and 4 output -l and -j output. At this point it can parse metrics from varnishstat and exports them as prometheus metrics, next is the HTTP server and scraping part.
- a6848d2 Implement renaming of names and label keys. Still some generic 'type' ones but no more 'id'.
- f6cbe5f Initial commit
- 1b7ace5 Let prettier format CHANGELOG
- 70d6e25 Let prettier format README
- 99e1698 Make metric grouping more structured and easy to add more.
- 57de0b5 Make sure -j works with given params before starting the server. Log varnish stdout/err if test run fails so user knows what went south.
- 9ce505e Make the new varnishstat version detection a bit more robust. Improve error reporting.
- 7f04a14 Merge branch 'master' of github.com:jonnenauha/prometheus_varnish_exporter
- a3eaaaa Merge pull request #1 from finn-no/master
- 2303f4f Merge pull request #1 from otto-de/thomasklinger1234-patch-1
- ee9925a Merge pull request #4 from otto-de/chore/goreleaser
- dc01100 Merge switch for 'c' and 'a' flags.
- 6172d9c Mirror promu tools package naming and internal strcuture. Also do tar.gz on window. Update to go 1.7.5 (lets see if available on travis).
- 27879c3 More details how to install and setup go for development.
- 721e245 More readable name for grouping main_sess
- 19139cd More readme updates, add spesific Varnish versions that I have tested against.
- a32f05a Move to travis-ci.com from .org. The org version was not progressing builds anymore, seems they are shutting that down when year changes.
- 6b28f8e New -no-exit mode If enabled server does not exit if varnish cannot be scraped. Reduce scrape timeout to 1 second. Better logging for scrape handler. Fixes jonnenauha#18.
- d75c07f New cross compilation script. Packages everything for a github release. Add -version print that is set during build script compilation.
- 2caf50d New per backend metric 'varnish_backend_up' with 1/0 value. This value is generated from the backend happy metric uint64 bitmap value. That metric itself goes many times as bogus into prometheus as it must be a float64 and loses precision.
- 1bbe270 Non-working fix for newer varnishstat JSON with metrics in the "counters" object
{ "version": 1, "timestamp": "2020-09-22T11:55:40", "counters": { "MGT.uptime": { "description": "Management process uptime", "flag": "c", "format": "d", "value": 4725 }, ... - c911f06 One more try at -n
- 737a78f Parse VBE. metric backend name from the varnish 'ident' to 'backend' label. This will make nicer graphs that can have the actual server name as a UI label. The http host:port in v3 or long uuid in v4 is left to 'ident'. This is a bit ugly code, will have to make version info global for easy access. Will make all this nicer on the const metrics refactor.
- 9423974 Prepare changelog and build script for v1.2 release.
- f181a48 Prepare v1.1 release
- 7c2d9dc README typo and clarification
- 2cd428c README: document the default listener port (jonnenauha#34)
- 137a075 Readme updates. Update to go 1.10.3. Test support for Varnish 6.0.0.
- 87700bf Recommend recording rules for backend metrics (jonnenauha#13)
- d1ffa7d Refactor and simplify codebase by using on the spot created prometheus const metrics.
- 6c524cc Refactor varnish version to be gloal instead of owned by the exporter.
- 88a7ace Remove 386 arch release files from github tag deploy
- 0855dcb Remove GOARCH=386 builds from releases
- f9e6699 Remove dead code for -l mode
- 9848964 Remove old cross plat scripts
- ba072ed Remove todo for version info as its not its own metric.
- 8d7b281 Replacing/removing dropped features in PromQL (jonnenauha#33)
- f7080cf Report how long it took for -test scrape, this should reflect quite closely how fast the runtime scrapes will be (though I did not check if the prom channel is unbuffered or not, the test one is unbuffered).
- b99d22c Start buildings on go 1.9.1
- ec7a4c0 Starting to understand what the difference between GaugeVec and Gauge is. Group more metrics together via GaugeVec and make singleton metrics Gauge instead. Implement prometheus.Collector and HTTP server parts.
- a53fc3a Support the
astatistics field format. (jonnenauha#48) - 46d669e Support varnish 6.5+
- 831d3b7 Switch prev commit so that you must explicitly turn on go metrics. This seems to be now recommended by the prometheus package. If someone was using these, you can still get them with -with-go-metrics. Document this in changelog, bump version to 1.4 as this will change default behavior.
- c3e1e16 Try to find go from GOROOT. Teest command needs sudo for varnishstat to complete (will timeout as cannot resolve the instance, at least on my setup).
- f439e80 Update README to reflect recent changes. Did not unfortunately go into 1.5 release packages but its fine, nothing that big changed for prod runs.
- bbb66e7 Update README.md
- 484ca4d Update README.md
- 89b141b Update Travis builds latest go version
- 3b2a42d Update _up metric description. Update changelog.
- 8aee39a Update changelog
- 7ac4b61 Update changelog
- 0fb87ed Update changelog
- 5e50336 Update changelog for 1.3.2
- 3a368bc Update changelog. Jumping to 1.5 as there are some changes to the prom metrics export (correctly reports guage/counter type).
- cf9a93f Update dashboard.json (jonnenauha#73)
- 5092b03 Update prom dep to latest
- 0e1a014 Update readme
- e243453 Update readme
- 218cffa Update readme for build.sh and remove docker services from travis-ci.
- f97cd3e Update secure token for tarvis-ci.com and update to deploy v2.
- 7eed161 Update that tested to work with 5.x releases as well. Recently update to this at our company, exporter works as expeted without changes to grafana etc.
- 68c3e1c Update to go 1.13.3 in travis builds
- 2862ccb Update to go 1.8. Update changelog.
- 0fe1128 Update to go 1.9 for new release
- e4d1648 Update travis/release go version to 1.15.6
- 63e101f Upload a separate dashboards archive on releases.
- 03f910a Use 'flag' to detect bitmap type instead of 'format'. The flag one has been available up to 4.0, format only after.
- 5390faf Use the generic varnishstat runner also for -V run
- b58ac81 Varnish 3 (jonnenauha#51)
- 9f07234 Wait for all programmatic scrapes to finish before continuing (-test mode and go test). Update changelog.
- f970948 Widen the locked area on Collect. Guard varnish metricsByName with mutex as well. Note: Most of this will go away when refactored to use ConstMetric as per discussed in the prom mailing list.
- c280a3c add travis badge and fix TRAVIS_TAG empty check.
- d5b0bfc build.sh: Take version string as input param. Copy license, changelog and readme to produced packages.
- 29ce318 chore(MAINTAINERS): add myself
- 99903c4 chore(build): add dockerfile
- 8a52b3c chore(ci): add release workflow
- 236d8a0 chore(deps): add dependabot
- bc95125 chore(deps): update deps and go
- 69858b5 chore(deps): update prometheus client
- 8f403a9 chore(release): add goreleaser
- 11ea354 chore(release): cleanup before review
- 2f09809 chore: add CODEOWNERS
- 4c1c2c9 chore: add MAINTAINERS file
- 9fab6bb chore: add OSS files
- b3a0dea chore: add code of conduct
- 3d9ca9d chore: add contributing guidelines
- b38b043 chore: add security policy
- fcf5e1f chore: remove travis configuration
- 777abb5 chore: rename go package
- 257d140 correct spelling mistake
- 7c2b385 fix dir and mac build (jonnenauha#32)
- d4ba622 fix(ci): add buildkit
- 33c9dee fix(ci): argument for go version file
- fdecc78 readme updates: preview pic and examples.
- cb77dc7 refactor(entrypoint): no need to wait and remove debug setup
- f43bcff travis build to latest go release
- 2a68f02 update changelog, fix build script to not check 386 arch builds
- 4956e10 update github.com/prometheus/client_golang dependency to latest
- 2ea86a4 varnish_test.go: fix call to scrapeVarnish (#4)
Released by GoReleaser.