counter registry\_requests\_total by path\_class, repo, node counter registry\_pull\_blob\_bytes\_total by repo, user, node counter registry\_pull\_blob\_seconds\_total by repo, user, node counter registry\_push\_upload\_bytes\_total by repo, user, node counter registry\_push\_upload\_seconds\_total by repo, user, node counter registry\_push\_session\_bytes\_total by repo, user, node counter registry\_push\_session\_seconds\_total by repo, user, node /"remote\_address":"(?P\[^"]*)".*"remote\_user":"(?P\[^"]*)".*"method":"GET".*"path":"/v2/(?P.+?)/blobs/sha256:\[a-f0-9]+".*"body\_bytes\_sent":(?P\d+).\*"request\_time":(?P\[0-9.]+)/ { registry\_pull\_blob\_bytes\_total\[\$repo]\[\$user]\[\$node] += \$body registry\_pull\_blob\_seconds\_total\[\$repo]\[\$user]\[\$node] += \$rt registry\_requests\_total\["pull\_blob"]\[\$repo]\[\$node]++ } /"remote\_address":"(?P\[^"]*)".*"remote\_user":"(?P\[^"]*)".*"method":"PATCH".*"path":"/v2/(?P.+?)/blobs/uploads/\[a-f0-9-]+".*"upstream\_range":"(?P\d+)-(?P\d+)".\*"request\_time":(?P\[0-9.]+)/ { registry\_push\_upload\_bytes\_total\[\$repo]\[\$user]\[\$node] += int(\$end1) + 1 registry\_push\_upload\_seconds\_total\[\$repo]\[\$user]\[\$node] += \$rt1 registry\_push\_session\_bytes\_total\[\$repo]\[\$user]\[\$node] += int(\$end1) - int(\$start1) + 1 registry\_push\_session\_seconds\_total\[\$repo]\[\$user]\[\$node] += \$rt1 registry\_requests\_total\["push\_upload"]\[\$repo]\[\$node]++ } /"remote\_address":"(?P\[^"]*)".*"remote\_user":"(?P\[^"]*)".*"method":"PATCH".*"path":"/v2/(?P.+?)/blobs/uploads/\[a-f0-9-]+".*"request\_time":(?P\[0-9.]+).\*"upstream\_range":"(?P\d+)-(?P\d+)"/ { registry\_push\_upload\_bytes\_total\[\$repo]\[\$user]\[\$node] += int(\$end2) + 1 registry\_push\_upload\_seconds\_total\[\$repo]\[\$user]\[\$node] += \$rt2 registry\_push\_session\_bytes\_total\[\$repo]\[\$user]\[\$node] += int(\$end2) - int(\$start2) + 1 registry\_push\_session\_seconds\_total\[\$repo]\[\$user]\[\$node] += \$rt2 registry\_requests\_total\["push\_upload"]\[\$repo]\[\$node]++ } /"remote\_address":"(?P\[^"]*)".*"method":"GET".\*"path":"/v2/(?P.+?)/manifests/\[^"]+"/ { registry\_requests\_total\["pull\_manifest"]\[\$repo]\[\$node]++ } /"remote\_address":"(?P\[^"]*)".*"method":"PUT".\*"path":"/v2/(?P.+?)/manifests/\[^"]+"/ { registry\_requests\_total\["push\_manifest"]\[\$repo]\[\$node]++ } /"remote\_address":"(?P\[^"]*)".*"path":"/v2/".\*"method":"\w+"/ { registry\_requests\_total\["v2\_root"]\["none"]\[\$node]++ }