Cloudwatch Logs: Update language definition for Monaco editor (#71402)

pull/71493/head
Kevin Yu 2 years ago committed by GitHub
parent 9b22342b91
commit ee28e9320c
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
  1. 27
      public/app/plugins/datasource/cloudwatch/language/logs/completion/types.ts
  2. 4
      public/app/plugins/datasource/cloudwatch/language/logs/definition.ts
  3. 9
      public/app/plugins/datasource/cloudwatch/language/logs/language.ts

@ -1,17 +1,18 @@
import { TokenTypes } from '../../monarch/types';
import { CLOUDWATCH_LOGS_LANGUAGE_DEFINITION_ID } from '../definition';
export const LogsTokenTypes: TokenTypes = {
Parenthesis: 'delimiter.parenthesis.cloudwatch-logs',
Whitespace: 'white.cloudwatch-logs',
Keyword: 'keyword.cloudwatch-logs',
Delimiter: 'delimiter.cloudwatch-logs',
Operator: 'operator.cloudwatch-logs',
Identifier: 'identifier.cloudwatch-logs',
Type: 'type.cloudwatch-logs',
Function: 'predefined.cloudwatch-logs',
Number: 'number.cloudwatch-logs',
String: 'string.cloudwatch-logs',
Variable: 'variable.cloudwatch-logs',
Comment: 'comment.cloudwatch-logs',
Regexp: 'regexp.cloudwatch-logs',
Parenthesis: `delimiter.parenthesis.${CLOUDWATCH_LOGS_LANGUAGE_DEFINITION_ID}`,
Whitespace: `white.${CLOUDWATCH_LOGS_LANGUAGE_DEFINITION_ID}`,
Keyword: `keyword.${CLOUDWATCH_LOGS_LANGUAGE_DEFINITION_ID}`,
Delimiter: `delimiter.${CLOUDWATCH_LOGS_LANGUAGE_DEFINITION_ID}`,
Operator: `operator.${CLOUDWATCH_LOGS_LANGUAGE_DEFINITION_ID}`,
Identifier: `identifier.${CLOUDWATCH_LOGS_LANGUAGE_DEFINITION_ID}`,
Type: `type.${CLOUDWATCH_LOGS_LANGUAGE_DEFINITION_ID}`,
Function: `predefined.${CLOUDWATCH_LOGS_LANGUAGE_DEFINITION_ID}`,
Number: `number.${CLOUDWATCH_LOGS_LANGUAGE_DEFINITION_ID}`,
String: `string.${CLOUDWATCH_LOGS_LANGUAGE_DEFINITION_ID}`,
Variable: `variable.${CLOUDWATCH_LOGS_LANGUAGE_DEFINITION_ID}`,
Comment: `comment.${CLOUDWATCH_LOGS_LANGUAGE_DEFINITION_ID}`,
Regexp: `regexp.${CLOUDWATCH_LOGS_LANGUAGE_DEFINITION_ID}`,
};

@ -1,7 +1,9 @@
import { LanguageDefinition } from '../monarch/register';
export const CLOUDWATCH_LOGS_LANGUAGE_DEFINITION_ID = 'cloudwatch-logs';
const cloudWatchLogsLanguageDefinition: LanguageDefinition = {
id: 'logs',
id: CLOUDWATCH_LOGS_LANGUAGE_DEFINITION_ID,
extensions: [],
aliases: [],
mimetypes: [],

@ -14,8 +14,8 @@ export const STATS = 'stats';
export const SORT = 'sort';
export const LIMIT = 'limit';
export const PARSE = 'parse';
export const UNMASK = 'unmask'; //make sure we support this one
export const LOGS_COMMANDS = [DISPLAY, FIELDS, FILTER, STATS, SORT, LIMIT, PARSE, UNMASK];
export const DEDUP = 'dedup';
export const LOGS_COMMANDS = [DISPLAY, FIELDS, FILTER, STATS, SORT, LIMIT, PARSE, DEDUP];
export const LOGS_LOGIC_OPERATORS = ['and', 'or', 'not'];
@ -71,9 +71,12 @@ export const LOGS_FUNCTION_OPERATORS = [
'substr',
'replace',
'strcontains',
// field
'unmask',
];
export const LOGS_KEYWORDS = ['like', 'by', 'in', 'desc', 'asc', 'as'];
export const SORT_DIRECTION_KEYWORDS = ['asc', 'desc'];
export const LOGS_KEYWORDS = ['like', 'by', 'in', 'as', ...SORT_DIRECTION_KEYWORDS];
export const language: CloudWatchLogsLanguage = {
defaultToken: 'invalid',

Loading…
Cancel
Save