The addFieldAliasMapping() GraphQL
mutation can be used to add a field alias mapping to an existing
schema. It returns the unique identifier of the alias mapping
— if successful.
For more information on dashboards, see the
Dashboards & Widgets documentation page.
Below is the syntax for the
addFieldAliasMapping() mutation field:
addFieldAliasMapping(
input : AddAliasMappingInput!
) : string!
Below is an example of how this mutation field might be used:
Show:
Raw Mac OS or Linux (curl) Mac OS or Linux (curl) One-line Windows Cmd and curl Windows Powershell and curl Perl Python Node.js
Raw mutation {
addFieldAliasMapping(
schemaId : "123" ,
aliasMapping : {
name : "ECS for HAProxy" ,
tags : [ { name : "kind" , value : "logs" } ,
{ name : "repo" , value : "github" } ] ,
aliases : [ { source : "port" , alias : "source.port" } ]
}
)
}
Mac OS or Linux (curl) curl -v -X POST $YOUR_LOGSCALE_URL/graphql \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d @- << EOF
{"query" : "mutation {
addFieldAliasMapping(
schemaId: \"123\",
aliasMapping: {
name: \"ECS for HAProxy\",
tags: [ {name: \"kind\", value: \"logs\"},
{name: \"repo\", value: \"github\"} ],
aliases: [ {source: \"port\", alias: \"source.port\"} ]
}
)
}"
}
EOF
Mac OS or Linux (curl) One-line curl -v -X POST $YOUR_LOGSCALE_URL/graphql \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d @- << EOF
{"query" : "mutation {
addFieldAliasMapping(
schemaId: \"123\",
aliasMapping: {
name: \"ECS for HAProxy\",
tags: [ {name: \"kind\", value: \"logs\"},
{name: \"repo\", value: \"github\"} ],
aliases: [ {source: \"port\", alias: \"source.port\"} ]
}
)
}"
}
EOF
Windows Cmd and curl curl -v -X POST $YOUR_LOGSCALE_URL/graphql ^
-H "Authorization: Bearer $TOKEN" ^
-H "Content-Type: application/json" ^
-d @'{"query" : "mutation { ^
addFieldAliasMapping( ^
schemaId: \"123\", ^
aliasMapping: { ^
name: \"ECS for HAProxy\", ^
tags: [ {name: \"kind\", value: \"logs\"}, ^
{name: \"repo\", value: \"github\"} ], ^
aliases: [ {source: \"port\", alias: \"source.port\"} ] ^
} ^
) ^
}" ^
} '
Windows Powershell and curl curl.exe -X POST
-H "Authorization: Bearer $TOKEN "
-H "Content-Type: application/json"
-d '{"query" : "mutation {
addFieldAliasMapping(
schemaId: \"123\",
aliasMapping: {
name: \"ECS for HAProxy\",
tags: [ {name: \"kind\", value: \"logs\"},
{name: \"repo\", value: \"github\"} ],
aliases: [ {source: \"port\", alias: \"source.port\"} ]
}
)
}"
}'
"$YOUR_LOGSCALE_URL /graphql"
Perl
use HTTP::Request;
use LWP;
my $INGEST_TOKEN = "TOKEN" ;
my $uri = '$YOUR_LOGSCALE_URL/graphql' ;
my $json = '{"query" : "mutation {
addFieldAliasMapping(
schemaId: \"123\",
aliasMapping: {
name: \"ECS for HAProxy\",
tags: [ {name: \"kind\", value: \"logs\"},
{name: \"repo\", value: \"github\"} ],
aliases: [ {source: \"port\", alias: \"source.port\"} ]
}
)
}"
}' ;
my $req = HTTP::Request->new("POST" , $uri );
$req->header("Authorization" => "Bearer $TOKEN" );
$req->header("Content-Type" => "application/json" );
$req->content( $json );
my $lwp = LWP::UserAgent->new;
my $result = $lwp->request( $req );
print $result->{"_content" },"\n" ;
Python
import requests
url = '$YOUR_LOGSCALE_URL/graphql'
mydata = r'''{"query" : "mutation {
addFieldAliasMapping(
schemaId: \"123\",
aliasMapping: {
name: \"ECS for HAProxy\",
tags: [ {name: \"kind\", value: \"logs\"},
{name: \"repo\", value: \"github\"} ],
aliases: [ {source: \"port\", alias: \"source.port\"} ]
}
)
}"
}'''
resp = requests.post(url,
data = mydata,
headers = {
"Authorization" : "Bearer $TOKEN" ,
"Content-Type" : "application/json"
}
)
print (resp.text)
Node.js const https = require ('https' );
const data = JSON .stringify (
{"query" : "mutation {
addFieldAliasMapping(
schemaId: \"123\",
aliasMapping: {
name: \"ECS for HAProxy\",
tags: [ {name: \"kind\", value: \"logs\"},
{name: \"repo\", value: \"github\"} ],
aliases: [ {source: \"port\", alias: \"source.port\"} ]
}
)
}"
}
);
const options = {
hostname : '$YOUR_LOGSCALE_URL/graphql' ,
path : '/graphql' ,
port : 443 ,
method : 'POST' ,
headers : {
'Content-Type' : 'application/json' ,
'Content-Length' : data.length ,
Authorization : 'BEARER ' + process.env .TOKEN ,
'User-Agent' : 'Node' ,
},
};
const req = https.request (options, (res ) => {
let data = '' ;
console .log (`statusCode: ${res.statusCode} ` );
res.on ('data' , (d ) => {
data += d;
});
res.on ('end' , () => {
console .log (JSON .parse (data).data );
});
});
req.on ('error' , (error ) => {
console .error (error);
});
req.write (data);
req.end ();
Example Responses Show:
Success (HTTP Response Code 200 OK)
Success (HTTP Response Code 200 OK) {
"data" : {
"addFieldAliasMapping" : "c9vjksYPrvvGneUEjkkUFdyOKf9bcjvn"
} ,
}
AddAliasMappingInput
has
a couple of parameters:
To create a new field alias mapping:
Show:
Raw Mac OS or Linux (curl) Mac OS or Linux (curl) One-line Windows Cmd and curl Windows Powershell and curl Perl Python Node.js
Raw mutation {
addFieldAliasMapping(
schemaId : "123" ,
aliasMapping : {
name : "ECS for HAProxy" ,
tags : [ { name : "kind" , value : "logs" } ,
{ name : "repo" , value : "github" } ] ,
aliases : [ { source : "port" , alias : "source.port" } ]
}
)
}
Mac OS or Linux (curl) curl -v -X POST $YOUR_LOGSCALE_URL/graphql \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d @- << EOF
{"query" : "mutation {
addFieldAliasMapping(
schemaId: \"123\",
aliasMapping: {
name: \"ECS for HAProxy\",
tags: [ {name: \"kind\", value: \"logs\"},
{name: \"repo\", value: \"github\"} ],
aliases: [ {source: \"port\", alias: \"source.port\"} ]
}
)
}"
}
EOF
Mac OS or Linux (curl) One-line curl -v -X POST $YOUR_LOGSCALE_URL/graphql \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d @- << EOF
{"query" : "mutation {
addFieldAliasMapping(
schemaId: \"123\",
aliasMapping: {
name: \"ECS for HAProxy\",
tags: [ {name: \"kind\", value: \"logs\"},
{name: \"repo\", value: \"github\"} ],
aliases: [ {source: \"port\", alias: \"source.port\"} ]
}
)
}"
}
EOF
Windows Cmd and curl curl -v -X POST $YOUR_LOGSCALE_URL/graphql ^
-H "Authorization: Bearer $TOKEN" ^
-H "Content-Type: application/json" ^
-d @'{"query" : "mutation { ^
addFieldAliasMapping( ^
schemaId: \"123\", ^
aliasMapping: { ^
name: \"ECS for HAProxy\", ^
tags: [ {name: \"kind\", value: \"logs\"}, ^
{name: \"repo\", value: \"github\"} ], ^
aliases: [ {source: \"port\", alias: \"source.port\"} ] ^
} ^
) ^
}" ^
} '
Windows Powershell and curl curl.exe -X POST
-H "Authorization: Bearer $TOKEN "
-H "Content-Type: application/json"
-d '{"query" : "mutation {
addFieldAliasMapping(
schemaId: \"123\",
aliasMapping: {
name: \"ECS for HAProxy\",
tags: [ {name: \"kind\", value: \"logs\"},
{name: \"repo\", value: \"github\"} ],
aliases: [ {source: \"port\", alias: \"source.port\"} ]
}
)
}"
}'
"$YOUR_LOGSCALE_URL /graphql"
Perl
use HTTP::Request;
use LWP;
my $INGEST_TOKEN = "TOKEN" ;
my $uri = '$YOUR_LOGSCALE_URL/graphql' ;
my $json = '{"query" : "mutation {
addFieldAliasMapping(
schemaId: \"123\",
aliasMapping: {
name: \"ECS for HAProxy\",
tags: [ {name: \"kind\", value: \"logs\"},
{name: \"repo\", value: \"github\"} ],
aliases: [ {source: \"port\", alias: \"source.port\"} ]
}
)
}"
}' ;
my $req = HTTP::Request->new("POST" , $uri );
$req->header("Authorization" => "Bearer $TOKEN" );
$req->header("Content-Type" => "application/json" );
$req->content( $json );
my $lwp = LWP::UserAgent->new;
my $result = $lwp->request( $req );
print $result->{"_content" },"\n" ;
Python
import requests
url = '$YOUR_LOGSCALE_URL/graphql'
mydata = r'''{"query" : "mutation {
addFieldAliasMapping(
schemaId: \"123\",
aliasMapping: {
name: \"ECS for HAProxy\",
tags: [ {name: \"kind\", value: \"logs\"},
{name: \"repo\", value: \"github\"} ],
aliases: [ {source: \"port\", alias: \"source.port\"} ]
}
)
}"
}'''
resp = requests.post(url,
data = mydata,
headers = {
"Authorization" : "Bearer $TOKEN" ,
"Content-Type" : "application/json"
}
)
print (resp.text)
Node.js const https = require ('https' );
const data = JSON .stringify (
{"query" : "mutation {
addFieldAliasMapping(
schemaId: \"123\",
aliasMapping: {
name: \"ECS for HAProxy\",
tags: [ {name: \"kind\", value: \"logs\"},
{name: \"repo\", value: \"github\"} ],
aliases: [ {source: \"port\", alias: \"source.port\"} ]
}
)
}"
}
);
const options = {
hostname : '$YOUR_LOGSCALE_URL/graphql' ,
path : '/graphql' ,
port : 443 ,
method : 'POST' ,
headers : {
'Content-Type' : 'application/json' ,
'Content-Length' : data.length ,
Authorization : 'BEARER ' + process.env .TOKEN ,
'User-Agent' : 'Node' ,
},
};
const req = https.request (options, (res ) => {
let data = '' ;
console .log (`statusCode: ${res.statusCode} ` );
res.on ('data' , (d ) => {
data += d;
});
res.on ('end' , () => {
console .log (JSON .parse (data).data );
});
});
req.on ('error' , (error ) => {
console .error (error);
});
req.write (data);
req.end ();
Example Responses Show:
Success (HTTP Response Code 200 OK)
Success (HTTP Response Code 200 OK) {
"data" : {
"addFieldAliasMapping" : "c9vjksYPrvvGneUEjkkUFdyOKf9bcjvn"
} ,
}
This mutation performs the action as when adding a new alias
mapping for an individual field, as detailed on the
Field Aliasing page.
The alias configuration from the above query, as shown within the
UI is shown below: