-
Notifications
You must be signed in to change notification settings - Fork 13
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
W-15161420 tracing and entities #272
Open
sarathecoubian
wants to merge
46
commits into
latest
Choose a base branch
from
W-15161420-tracing-and-entities
base: latest
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Changes from all commits
Commits
Show all changes
46 commits
Select commit
Hold shift + click to select a range
3db60af
Pricing W-14795157-pricing-changes
sarathecoubian b4b1ff0
dashboards
sarathecoubian a0615bb
W-14795157-pricing-changes
sarathecoubian 0561446
Update app-dashboards.adoc
sarathecoubian cfd675a
Update index.adoc
sarathecoubian 9576b9d
Update performance-and-impact.adoc
sarathecoubian 161a299
Update performance-and-impact.adoc
sarathecoubian e376e90
W-13840863-EntitiesOverview-LimitedGA-SY (#255)
sarathecoubian ec90386
W-14038258-TracingOverview-SY (#259)
sarathecoubian 9d942e8
Field feedback 03/01
sarathecoubian 9e3dc7a
Adding updates from tech review.
emileemooreVT d21218b
Updates from Sathish
emileemooreVT 100844d
AMQL partial
sarathecoubian 164fa26
Merge branch 'latest' into W-14795157-pricing-changes
sarathecoubian 503324f
Update modules/ROOT/pages/index.adoc
sarathecoubian ad34675
Update amql.adoc
sarathecoubian d18c327
Update amql.adoc
sarathecoubian 02b55ae
Update amql.adoc
sarathecoubian 4de0b3d
literal monospace
sarathecoubian 28374d7
Update amql.adoc
sarathecoubian ae09a42
Update amql.adoc
sarathecoubian f46a2db
Titanium requirement
sarathecoubian 59fe498
Apply suggestions from code review
sarathecoubian 024067a
Update modules/ROOT/nav.adoc
sarathecoubian d419749
anypoint insights rename
sarathecoubian 8ac04a4
Apply suggestions from code review
sarathecoubian dc30a3f
Merge branch 'latest' into W-15161420-tracing-and-entities
sarathecoubian feb6970
Merge pull request #276 from mulesoft/W-14795157-pricing-changes
sarathecoubian 270e7ec
AMQL and Archive API partial implementation
sarathecoubian 818941d
Update modules/ROOT/pages/am-apis.adoc
sarathecoubian 1308a13
Apply suggestions from code review
sarathecoubian aba54ea
Update modules/ROOT/pages/am-apis.adoc
sarathecoubian aec05b6
Merge branch 'latest' into W-15161420-tracing-and-entities
valkyrie69 8244e20
Edits
valkyrie69 603fdb6
Formatting
valkyrie69 5b68d3e
W-16277644 Traces doc updates
valkyrie69 19ed5b7
Update
valkyrie69 6304394
Review feedback
valkyrie69 39e1134
Merge pull request #287 from mulesoft/W-16277644-traces-docs-updates-vh
valkyrie69 00abdd9
W-15161420-tracing-and-entities
dukesphere 802c566
Merge branch 'latest' into W-14795157-pricing-changes
dukesphere 98a56bb
Merge branch 'latest' into W-15161420-tracing-and-entities
dukesphere e48b999
Merge branch 'W-15161420-tracing-and-entities' into W-14795157-pricin…
dukesphere 39eff8f
Merge pull request #277 from mulesoft/W-14795157-pricing-changes
dukesphere ddbd566
Merge branch 'latest' into W-15161420-tracing-and-entities
dukesphere 7c7560c
Merge branch 'latest' into W-15161420-tracing-and-entities
dukesphere File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,233 @@ | ||
// tag::amqlIntro[] | ||
Anypoint Monitoring Query Language (AMQL) is a domain-specific language that enables you to search your organization’s metering and observability data for specific information that the MuleSoft Observability Platform Service collects. | ||
|
||
AMQL uses similar syntax to SQL `SELECT` statements. | ||
// end::amqlIntro[] | ||
|
||
// tag::queryGrammarUR[] | ||
|
||
To adhere to AMQL grammar, arrange your clauses in the following order: | ||
|
||
[source,sql] | ||
---- | ||
SELECT fieldList,[aggregationExpressionList][...] | ||
FROM DataSource | ||
WHERE timestamp between {start} AND {end}[ AND filterExpression] | ||
[ORDER BY fieldOrAggregationList {ASC|DESC}] | ||
[LIMIT limit] | ||
[OFFSET offset] | ||
---- | ||
|
||
The following example returns usage data between March 11 and March 13, 2023. The data source is Flex Gateway API calls, and the fields returned are organization ID, environment ID, and how many API calls were made: | ||
|
||
[source,sql] | ||
---- | ||
SELECT org_id, env_id, api_call_count | ||
FROM flex_gateway_api_calls | ||
WHERE timestamp between 1710198204000 AND 1710371004000 | ||
---- | ||
|
||
// end::queryGrammarUR[] | ||
|
||
// tag::queryGrammarAll[] | ||
|
||
To adhere to AMQL grammar, arrange your clauses in the following order: | ||
|
||
[source,sql] | ||
---- | ||
SELECT fieldList,[aggregationExpressionList][...] | ||
FROM DataSource | ||
WHERE timestamp between {start} AND {end}[ AND filterExpression] | ||
[GROUP BY fieldGroupByList] | ||
[HAVING havingConditionExpression] | ||
[ORDER BY fieldOrAggregationList {ASC|DESC}] | ||
[TimeSeries timeWindowSize] | ||
[LIMIT limit] | ||
[OFFSET offset] | ||
---- | ||
// end::queryGrammarAll[] | ||
|
||
// tag::filtering[] | ||
The following clause shows AMQL filtering: | ||
|
||
[source,sql] | ||
---- | ||
filterExpression -> conditionExpresion [AND conditionExpression] | ||
conditionExpression -> field comparisonOperator [literal|literList|field| NULL] | ||
---- | ||
|
||
// end::filtering[] | ||
|
||
// tag::grouping[] | ||
|
||
[source,sql] | ||
---- | ||
aggregationExpression -> aggregationFunction(field[,parameters]) | ||
AggregationFunction = avg|sum|percentile|histogram|max|min|count | ||
aggregatedConditionExpression -> aggregationFunction(field[,parameters]) comparisionOperator [literal|literalList] | ||
havingConditionExpression -> aggregatedConditionExpression [ AND aggregatedConditionExpression] | ||
|
||
---- | ||
// end::grouping[] | ||
|
||
// tag::reservedKeywords[] | ||
|
||
AMQL has several reserved keywords, which are not case sensitive. | ||
|
||
* `AS` | ||
* `ASC` | ||
* `BETWEEN` | ||
* `BY` | ||
* `DESC` | ||
* `FROM` | ||
* `GROUP` | ||
* `HAVING` | ||
* `IN` | ||
* `LIKE` | ||
* `LIMIT` | ||
* `OFFSET` | ||
* `ORDER` | ||
* `SELECT` | ||
* `WHERE` | ||
* `TIMESTAMP` | ||
* `TIMESERIES` | ||
|
||
// end::reservedKeywords[] | ||
|
||
// tag::selectClause[] | ||
The `SELECT` clause enables you to get a list of fields in a data source using describe endpoints. | ||
|
||
When you use `SELECT`, consider the following: | ||
|
||
* Use describe endpoints for each service to get a list of fields present in your data source. | ||
* Using `SELECT` with a wildcard (`select *`) returns all public endpoints for a data source. Not all data sources support this option. | ||
* Wrap string literals in single quotes. | ||
* Field names in `SELECT` clauses are case-sensitive. | ||
* Using a field alias is supported. The syntax is `field AS aliasName`. | ||
* Wrap field names within double quotes to handle field names with special characters. The syntax is `select "field1", "field2.a" as 'fieldA' from dataSource`. | ||
* Aggregated fields support aliases. The syntax is `aggregationFunction(field, ..) AS alias`. If you don't provide an alias, the results return `aggregationFunction(field, ..)`. | ||
|
||
// end::selectClause[] | ||
|
||
// tag::whereClause[] | ||
The `WHERE` clause enables you to define your `timestamp` range filter (in epoch milliseconds) and operators. | ||
|
||
`WHERE` supports the following data types: | ||
|
||
* String literal | ||
* Integer | ||
* Decimal | ||
|
||
`WHERE` uses the following operators: | ||
|
||
|==== | ||
|Filter Function |Filter Operator |Notes | ||
|
||
|`Equals` | ||
|`=` | ||
| | ||
|
||
|`NotEquals` | ||
|`!=` | ||
| | ||
|
||
|`greater` | ||
|`>` | ||
| | ||
|
||
|`greaterOrEquals` | ||
|`>=` | ||
| | ||
|
||
|`less` | ||
|`<` | ||
| | ||
|
||
|`lessOrEquals` | ||
|`+<=+` | ||
| | ||
|
||
|`in` | ||
|`IN` | ||
| in (...) | ||
|
||
|`between` | ||
|`BETWEEN` | ||
a|The timestamp field supports only `between`. For example: | ||
|
||
[source,sql] | ||
---- | ||
WHERE timestamp between 1710198204000 AND 1710371004000 | ||
---- | ||
|
||
|`match pattern` | ||
|`LIKE` | ||
|This operator is a simplified version of the `match` operator, although it lacks regexp support. It supports only `wildcard`, noted as `*`. | ||
|
||
|==== | ||
// end::whereClause[] | ||
|
||
// tag::groupingClauseUR[] | ||
|
||
The `GROUPING` clause enables you to aggregate numeric values using the following functions: | ||
|
||
|==== | ||
|Aggregation |Arguments | ||
|
||
|`avg` | ||
|`<fieldName>` | ||
|
||
|`sum` | ||
|`<fieldName>` | ||
|
||
|`percentile` | ||
|`<fieldName, percentage value in range (0;100)>` | ||
|
||
|`max` | ||
|`<fieldName>` | ||
|
||
|`min` | ||
|`<fieldName>` | ||
|
||
|`count` | ||
|`<fieldName>` or `<dimensionName>` | ||
|
||
|`distinct_count` | ||
|`<fieldName>` or `<dimensionName>` | ||
|
||
|`histogram` | ||
|`<fieldName, splitPointsArray>` | ||
|
||
|==== | ||
|
||
Some fields in the data might not support certain aggregations. | ||
|
||
// end::groupingClauseUR[] | ||
|
||
// tag::timeseriesClause[] | ||
|
||
//was "The TIMESERIES clause takes time window size returns events aggregated in provided time-buckets." | ||
The `TIMESERIES` clause takes the time window size and returns events that are aggregated in time buckets you specified. | ||
|
||
Use the following format: | ||
|
||
[source,sql] | ||
---- | ||
TimeWindowSize | ||
// n is an integer | ||
P{n}M // n months | ||
P{n}D // n days | ||
PT{n}H // n hours | ||
PT{n}M // n minutes | ||
PT{n}S // n seconds | ||
---- | ||
|
||
The following examples show `TIMESERIES` windows: | ||
|
||
* 1 month: `TIMESERIES P1M` | ||
* 1 day: `TIMESERIES P1D` | ||
* 1 hour: `TIMESERIES PT1H` | ||
* 1 minute: `TIMESERIES PT1M` | ||
* 30 seconds: `TIMESERIES PT30S` | ||
|
||
// end::timeseriesClause[] |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,9 @@ | ||
You can access API analytics metrics data directly via the Anypoint Monitoring Archive API. Using this API, you can navigate and discover your API metrics data using a directory hierarchy. | ||
|
||
The Anypoint Monitoring Archive API enables you to download files that contain https://anypoint.mulesoft.com/exchange/portals/anypoint-platform/f1e97bc6-315a-4490-82a7-23abe036327a.anypoint-platform/anypoint-monitoring-archive-api/minor/1.0/pages/Metric%20Data/[JSON objects] that represent one or more metric events. You can write an application to navigate the data collected by the API and integrate it into your own system. | ||
|
||
You can also enable non-aggregated API events by setting this property: `anypoint.platform.config.analytics.agent.api_raw_metrics.enabled=true`. | ||
These events contain more detailed information about each API invocation and can be accessed using the Anypoint Monitoring Archive API under the `raw` file type. | ||
|
||
For more information about this API, see the https://anypoint.mulesoft.com/exchange/portals/anypoint-platform/f1e97bc6-315a-4490-82a7-23abe036327a.anypoint-platform/anypoint-monitoring-archive-api/minor/1.0/pages/home/[Anypoint Monitoring Archive API] page in Anypoint Exchange. | ||
include::reuse::partial$billing/pricing.adoc[tag=apiAvailability] |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
Anypoint Monitoring aggregates data in charts based on the selected time interval. The number of data points shown in a chart varies based on your selected time interval. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,7 @@ | ||
Anypoint Monitoring collects top occurring endpoints or operations for each data collection interval. Endpoints or operations that are not top occurring are sorted into a group called *Other*. | ||
|
||
In each data collection interval, top occurring endpoints or operations vary. An endpoint or operation that is top occurring in one interval might not be top occurring in the next. | ||
|
||
In Anypoint Monitoring charts and tables, the data comes from multiple data collection intervals. As a result, aggregated data shown in the dashboard is an estimation since the intervals might not have the same top occurring endpoints or operations. The tables show approximate counts for the most commonly occurring endpoints or operations when the *Other* grouping appears. | ||
|
||
For example, when an endpoint occurs more often than other endpoints in one interval but less often in another interval, Anypoint Monitoring sorts it into the Other group for the first interval. In this case, the resulting table displays lower than actual values for that endpoint, since the metrics that do not appear are grouped into the *Other* group. |
1 change: 1 addition & 0 deletions
1
modules/ROOT/pages/_partials/include-nav-distributed-tracing.adoc
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
. In the Anypoint Monitoring sidebar, click *Traces*. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
. In the Anypoint Monitoring navigation menu, click *Insights*. |
2 changes: 1 addition & 1 deletion
2
modules/ROOT/pages/_partials/include-nav-steps-no-permissions.adoc
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,2 +1,2 @@ | ||
. Log in to Anypoint Platform. | ||
. Log in to Anypoint Platform with a user account that has xref:am-permissions.adoc[permission to access Anypoint Monitoring content] . | ||
. In the navigation bar or the main Anypoint Platform screen, click *Monitoring*. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,58 @@ | ||
= APIs for Anypoint Monitoring | ||
|
||
Anypoint Monitoring has APIs that enable you to view, sort, and query your data: | ||
|
||
* Anypoint Monitoring Archive API | ||
+ | ||
Enables you to navigate and discover your API metrics data using a directory hierarchy. | ||
* Metrics API | ||
+ | ||
Enables you to query and transform data from a specific time range using the Anypoint Monitoring Query Language. | ||
* Traces API | ||
+ | ||
Enables you to query traces data using the Anypoint Monitoring Query Language. | ||
|
||
[[archive-api]] | ||
== Anypoint Monitoring Archive API | ||
|
||
include::partial$archive-api.adoc[] | ||
|
||
[[metrics-api]] | ||
== Anypoint Monitoring Metrics API | ||
|
||
WIP | ||
|
||
[[traces-api]] | ||
== Anypoint Monitoring Traces API | ||
|
||
WIP | ||
|
||
|
||
[[amql]] | ||
== Anypoint Monitoring Query Language (AMQL) | ||
|
||
include::monitoring::partial$amql.adoc[tag=amqlIntro] | ||
|
||
=== Query Grammar | ||
|
||
include::monitoring::partial$amql.adoc[tag=queryGrammarAll] | ||
|
||
=== Filtering | ||
|
||
include::monitoring::partial$amql.adoc[tag=filtering] | ||
|
||
=== Grouping | ||
|
||
include::monitoring::partial$amql.adoc[tag=grouping] | ||
|
||
=== Reserved Keywords | ||
|
||
include::monitoring::partial$amql.adoc[tag=reservedKeywords] | ||
|
||
=== SELECT Clause | ||
|
||
include::monitoring::partial$amql.adoc[tag=selectClause] | ||
|
||
=== WHERE Clause | ||
|
||
include::monitoring::partial$amql.adoc[tag=whereClause] |
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Two "You can also..." in a row. Can you change the wording of one of them?