Easily add metrics to your system – and actually understand them using automatically customized Prometheus queries
MIT License
Full Changelog: https://github.com/autometrics-dev/autometrics-ts/compare/lib-v1.0.0...lib-v1.0.1
Published by arendjr 11 months ago
This release features full compliance with the Autometrics v1.0.0 specification as well as first-class Deno support. Also, our decorators have been updated to match the Stage 3 ECMAScript decorators proposal.
In order to match the full Autometrics specification, we implemented the following features and changes:
@Autometrics({ skip: true })
.service.name
label. The service name is automatically detected based on the AUTOMETRICS_SERVICE_NAME
or OTEL_SERVICE_NAME
environment variables (in order of significance). If neither environment variable is set, Autometrics-ts attempts to determine the service name based on the package name defined in package.json
.repository.url
and repository.provider
labels. These labels can be used to create links from Autometrics function metrics directly to your source code. We attempt to auto-detect these labels based on your Git configuration, but you can configure them explicitly using the AUTOMETRICS_REPOSITORY_URL
and AUTOMETRICS_REPOSITORY_PROVIDER
environment variables.function.name
instead of function_name
. When used with Prometheus, labels should still be exported using underscores.Note that all labels such as service.name
and repository.url
/repository.provider
are also configurable in the init()
function, in addition to using environment variables.
We already offered experimental Deno support before, but with this release we've taken things one step further: We've migrated the Autometrics-ts core library to be Deno-first! This means we use Deno for our internal development and the Deno library is a first-class citizen. Most of our core unit tests also run in Deno now.
We also publish Deno releases straight to https://deno.land/x/autometrics now. (Please note there is still a slightly awkward lib-
prefix in the version specifiers, which we hope to resolve in the future.)
Thanks to the plumbing we did for moving to a Deno-first approach (shoutout dnt and rollup!), we have also been able to improve our compatibility with web bundlers. We now generate two versions of our NPM packages, one for Node.js users and one for web users. They're both bundled within the same package, so this should be fully transparent to our users.
Previous versions of Autometrics-ts only supported the TypeScript-specific legacy decorators. We still support those as well, but they've been renamed to @AutometricsLegacy
. The new @Autometrics
decorators are fully compliant with the ECMAScript proposal.
The updated feature set, such as the new @Autometrics({ skip: true })
option, is supported by both our modern and legacy decorators alike.
Here is a more detailed list of changes:
@Autometrics
decorator is now compliant with the@AutometricsLegacy
instead.caller.function
and caller.module
haveservice.name
label.repository.url
andrepository.provider
labels.@Autometrics({ skip: true })
. This also works withthis
handling in the wrappers and decorators.autometrics
package with web bundlers such as Parcel andPublished by arendjr 12 months ago
Published by keturiosakys about 1 year ago
v0.7
is a big change to how the Autometrics library works in JavaScript. The core library interface of wrappers and decorators remains the same and will collect the metrics as previously, however it will not export them. For that purpose exporters are now separate to the library itself allowing the user more control as to how they want to set up the metrics collection: as a pull endpoint for Prometheus, push gateway, OpenTelemetry collector or something else.
See the changelog for a full list of updates and the updated quickstart on how to work with the new TypeScript packages: https://docs.autometrics.dev/typescript/quickstart
Full Changelog: https://github.com/autometrics-dev/autometrics-ts/compare/lib-v0.6...lib-v0.7.0
Published by arendjr about 1 year ago
Published by arendjr about 1 year ago
Published by brettimus about 1 year ago
This is a beta release that includes several features to support usage in serverless functions alongside an aggregation gateway like Gravel.
Published by keturiosakys over 1 year ago
Full Changelog: https://github.com/autometrics-dev/autometrics-ts/compare/v0.5...lib-v0.6
Published by keturiosakys over 1 year ago
Full Changelog: https://github.com/autometrics-dev/autometrics-ts/compare/typescript-plugin-v0.5.3...typescript-plugin-v0.5
Published by stephlow over 1 year ago
Publishes the Parcel transformer plugin with version 0.1.1 to npm.
Published by flenter over 1 year ago
Full Changelog: https://github.com/autometrics-dev/autometrics-ts/compare/parcel-transformer-v0.1.0...typescript-plugin-v0.5.3
Published by arendjr over 1 year ago
This is the initial version of our Parcel transformer plugin.
Published by flenter over 1 year ago
Full Changelog: https://github.com/autometrics-dev/autometrics-ts/compare/typescript-plugin-v0.5.1...typescript-plugin-v0.5.2
Published by keturiosakys over 1 year ago
Full Changelog: https://github.com/autometrics-dev/autometrics-ts/compare/v0.5...typescript-plugin-v0.5.1
Published by keturiosakys over 1 year ago
caller
label for "tracing lite" by @keturiosakys in https://github.com/autometrics-dev/autometrics-ts/pull/51
node:async_hooks
from being run in the browser by @oscarvz in https://github.com/autometrics-dev/autometrics-ts/pull/60
build_info
and add a unit test by @keturiosakys in https://github.com/autometrics-dev/autometrics-ts/pull/64
Full Changelog: https://github.com/autometrics-dev/autometrics-ts/compare/v0.4...v0.5
Published by keturiosakys over 1 year ago
See also notes on
CHANGELOG.md
in project root
@Autometrics()
decorator type signature by @oscarvz in https://github.com/autometrics-dev/autometrics-ts/pull/53
Full Changelog: https://github.com/autometrics-dev/autometrics-ts/compare/v0.3...v0.4
Published by keturiosakys over 1 year ago
The major update in this release is support for adding SLOs to your functions. Read more about adding alerts and SLOs to your functions here and the rationale behind this approach here
Full Changelog: https://github.com/autometrics-dev/autometrics-ts/compare/v0.2...v0.3
Published by keturiosakys over 1 year ago
This release adds initial support for the library to be used in client-side applications (requiring a push gateway as intermediate). It also removes the TypeScript plugin from the convenience package - it now needs to be installed separately or (upcoming) as part of the VSCode extension.
Full Changelog: https://github.com/autometrics-dev/autometrics-ts/compare/v0.1.2...v0.2
Published by keturiosakys over 1 year ago
Full Changelog: https://github.com/autometrics-dev/autometrics-ts/compare/v0.1.1...v0.1.2
Published by keturiosakys over 1 year ago
Full Changelog: https://github.com/autometrics-dev/autometrics-ts/compare/v0.1...v0.1.1