Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
A
atlas
Project
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
dataplatform
atlas
Commits
df7d7689
Commit
df7d7689
authored
Mar 04, 2017
by
Madhan Neethiraj
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
ATALS-1634: added perf trace logs to REST APIs
parent
571f8d4e
Show whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
286 additions
and
31 deletions
+286
-31
AtlasTypeUtil.java
intg/src/main/java/org/apache/atlas/type/AtlasTypeUtil.java
+41
-0
DiscoveryREST.java
...rc/main/java/org/apache/atlas/web/rest/DiscoveryREST.java
+37
-7
EntityREST.java
...p/src/main/java/org/apache/atlas/web/rest/EntityREST.java
+155
-17
LineageREST.java
.../src/main/java/org/apache/atlas/web/rest/LineageREST.java
+15
-2
TypesREST.java
...pp/src/main/java/org/apache/atlas/web/rest/TypesREST.java
+38
-5
No files found.
intg/src/main/java/org/apache/atlas/type/AtlasTypeUtil.java
View file @
df7d7689
...
...
@@ -378,4 +378,44 @@ public class AtlasTypeUtil {
return
false
;
}
public
static
String
toDebugString
(
AtlasTypesDef
typesDef
)
{
StringBuilder
sb
=
new
StringBuilder
();
sb
.
append
(
"typesDef={"
);
if
(
typesDef
!=
null
)
{
sb
.
append
(
"enumDefs=["
);
dumpTypeNames
(
typesDef
.
getEnumDefs
(),
sb
);
sb
.
append
(
"],"
);
sb
.
append
(
"structDefs=["
);
dumpTypeNames
(
typesDef
.
getStructDefs
(),
sb
);
sb
.
append
(
"],"
);
sb
.
append
(
"classificationDefs=["
);
dumpTypeNames
(
typesDef
.
getClassificationDefs
(),
sb
);
sb
.
append
(
"],"
);
sb
.
append
(
"entityDefs=["
);
dumpTypeNames
(
typesDef
.
getEntityDefs
(),
sb
);
sb
.
append
(
"]"
);
}
sb
.
append
(
"}"
);
return
sb
.
toString
();
}
private
static
void
dumpTypeNames
(
List
<?
extends
AtlasBaseTypeDef
>
typeDefs
,
StringBuilder
sb
)
{
if
(
CollectionUtils
.
isNotEmpty
(
typeDefs
))
{
for
(
int
i
=
0
;
i
<
typeDefs
.
size
();
i
++)
{
AtlasBaseTypeDef
typeDef
=
typeDefs
.
get
(
i
);
if
(
i
>
0
)
{
sb
.
append
(
","
);
}
sb
.
append
(
typeDef
.
getName
());
}
}
}
}
\ No newline at end of file
webapp/src/main/java/org/apache/atlas/web/rest/DiscoveryREST.java
View file @
df7d7689
...
...
@@ -20,8 +20,10 @@ package org.apache.atlas.web.rest;
import
org.apache.atlas.exception.AtlasBaseException
;
import
org.apache.atlas.discovery.AtlasDiscoveryService
;
import
org.apache.atlas.model.discovery.AtlasSearchResult
;
import
org.apache.atlas.utils.AtlasPerfTracer
;
import
org.apache.atlas.web.util.Servlets
;
import
org.apache.commons.lang3.StringUtils
;
import
org.slf4j.Logger
;
import
javax.inject.Inject
;
import
javax.inject.Singleton
;
...
...
@@ -37,6 +39,8 @@ import javax.ws.rs.QueryParam;
@Path
(
"v2/search"
)
@Singleton
public
class
DiscoveryREST
{
private
static
final
Logger
PERF_LOG
=
AtlasPerfTracer
.
getPerfLogger
(
"rest.DiscoveryREST"
);
private
final
AtlasDiscoveryService
atlasDiscoveryService
;
@Inject
...
...
@@ -66,6 +70,14 @@ public class DiscoveryREST {
@QueryParam
(
"classification"
)
String
classification
,
@QueryParam
(
"limit"
)
int
limit
,
@QueryParam
(
"offset"
)
int
offset
)
throws
AtlasBaseException
{
AtlasPerfTracer
perf
=
null
;
try
{
if
(
AtlasPerfTracer
.
isPerfTraceEnabled
(
PERF_LOG
))
{
perf
=
AtlasPerfTracer
.
getPerfTracer
(
PERF_LOG
,
"DiscoveryREST.searchUsingDSL("
+
query
+
","
+
type
+
","
+
classification
+
","
+
limit
+
","
+
offset
+
")"
);
}
String
queryStr
=
query
==
null
?
""
:
query
;
if
(
StringUtils
.
isNoneEmpty
(
type
))
{
...
...
@@ -79,9 +91,10 @@ public class DiscoveryREST {
}
}
AtlasSearchResult
ret
=
atlasDiscoveryService
.
searchUsingDslQuery
(
queryStr
,
limit
,
offset
);
return
ret
;
return
atlasDiscoveryService
.
searchUsingDslQuery
(
queryStr
,
limit
,
offset
);
}
finally
{
AtlasPerfTracer
.
log
(
perf
);
}
}
/**
...
...
@@ -102,10 +115,18 @@ public class DiscoveryREST {
public
AtlasSearchResult
searchUsingFullText
(
@QueryParam
(
"query"
)
String
query
,
@QueryParam
(
"limit"
)
int
limit
,
@QueryParam
(
"offset"
)
int
offset
)
throws
AtlasBaseException
{
AtlasPerfTracer
perf
=
null
;
AtlasSearchResult
ret
=
atlasDiscoveryService
.
searchUsingFullTextQuery
(
query
,
limit
,
offset
);
try
{
if
(
AtlasPerfTracer
.
isPerfTraceEnabled
(
PERF_LOG
))
{
perf
=
AtlasPerfTracer
.
getPerfTracer
(
PERF_LOG
,
"DiscoveryREST.searchUsingFullText("
+
query
+
","
+
limit
+
","
+
offset
+
")"
);
}
return
ret
;
return
atlasDiscoveryService
.
searchUsingFullTextQuery
(
query
,
limit
,
offset
);
}
finally
{
AtlasPerfTracer
.
log
(
perf
);
}
}
/**
...
...
@@ -130,9 +151,17 @@ public class DiscoveryREST {
@QueryParam
(
"classification"
)
String
classification
,
@QueryParam
(
"limit"
)
int
limit
,
@QueryParam
(
"offset"
)
int
offset
)
throws
AtlasBaseException
{
AtlasPerfTracer
perf
=
null
;
AtlasSearchResult
ret
=
atlasDiscoveryService
.
searchUsingBasicQuery
(
query
,
type
,
classification
,
limit
,
offset
);
try
{
if
(
AtlasPerfTracer
.
isPerfTraceEnabled
(
PERF_LOG
))
{
perf
=
AtlasPerfTracer
.
getPerfTracer
(
PERF_LOG
,
"DiscoveryREST.searchUsingBasic("
+
query
+
","
+
type
+
","
+
classification
+
","
+
limit
+
","
+
offset
+
")"
);
}
return
ret
;
return
atlasDiscoveryService
.
searchUsingBasicQuery
(
query
,
type
,
classification
,
limit
,
offset
);
}
finally
{
AtlasPerfTracer
.
log
(
perf
);
}
}
}
\ No newline at end of file
webapp/src/main/java/org/apache/atlas/web/rest/EntityREST.java
View file @
df7d7689
...
...
@@ -18,11 +18,9 @@
package
org
.
apache
.
atlas
.
web
.
rest
;
import
org.apache.atlas.AtlasErrorCode
;
import
org.apache.atlas.AtlasException
;
import
org.apache.atlas.exception.AtlasBaseException
;
import
org.apache.atlas.model.TypeCategory
;
import
org.apache.atlas.model.instance.AtlasClassification
;
import
org.apache.atlas.model.instance.AtlasEntity
;
import
org.apache.atlas.model.instance.AtlasEntity.AtlasEntitiesWithExtInfo
;
import
org.apache.atlas.model.instance.AtlasEntity.AtlasEntityWithExtInfo
;
import
org.apache.atlas.model.instance.ClassificationAssociateRequest
;
...
...
@@ -36,12 +34,12 @@ import org.apache.atlas.services.MetadataService;
import
org.apache.atlas.type.AtlasClassificationType
;
import
org.apache.atlas.type.AtlasEntityType
;
import
org.apache.atlas.type.AtlasTypeRegistry
;
import
org.apache.atlas.typesystem.IStruct
;
import
org.apache.atlas.typesystem.ITypedStruct
;
import
org.apache.atlas.utils.AtlasPerfTracer
;
import
org.apache.atlas.web.util.Servlets
;
import
org.apache.commons.collections.CollectionUtils
;
import
org.apache.commons.collections.MapUtils
;
import
org.apache.commons.lang3.StringUtils
;
import
org.slf4j.Logger
;
import
javax.inject.Inject
;
import
javax.inject.Singleton
;
...
...
@@ -62,7 +60,6 @@ import java.util.HashMap;
import
java.util.List
;
import
java.util.Map
;
import
static
org
.
apache
.
atlas
.
repository
.
converters
.
AtlasInstanceConverter
.
toAtlasBaseException
;
/**
* REST for a single entity
...
...
@@ -70,6 +67,7 @@ import static org.apache.atlas.repository.converters.AtlasInstanceConverter.toAt
@Path
(
"v2/entity"
)
@Singleton
public
class
EntityREST
{
private
static
final
Logger
PERF_LOG
=
AtlasPerfTracer
.
getPerfLogger
(
"rest.EntityREST"
);
public
static
final
String
PREFIX_ATTR
=
"attr:"
;
...
...
@@ -98,7 +96,17 @@ public class EntityREST {
@Consumes
(
Servlets
.
JSON_MEDIA_TYPE
)
@Produces
(
Servlets
.
JSON_MEDIA_TYPE
)
public
AtlasEntityWithExtInfo
getById
(
@PathParam
(
"guid"
)
String
guid
)
throws
AtlasBaseException
{
AtlasPerfTracer
perf
=
null
;
try
{
if
(
AtlasPerfTracer
.
isPerfTraceEnabled
(
PERF_LOG
))
{
perf
=
AtlasPerfTracer
.
getPerfTracer
(
PERF_LOG
,
"EntityREST.getById("
+
guid
+
")"
);
}
return
entitiesStore
.
getById
(
guid
);
}
finally
{
AtlasPerfTracer
.
log
(
perf
);
}
}
/**
...
...
@@ -113,12 +121,23 @@ public class EntityREST {
@Produces
(
Servlets
.
JSON_MEDIA_TYPE
)
public
AtlasEntityWithExtInfo
getByUniqueAttributes
(
@PathParam
(
"typeName"
)
String
typeName
,
@Context
HttpServletRequest
servletRequest
)
throws
AtlasBaseException
{
AtlasEntityType
entityType
=
ensureEntityType
(
typeName
);
AtlasPerfTracer
perf
=
null
;
try
{
Map
<
String
,
Object
>
attributes
=
getAttributes
(
servletRequest
);
if
(
AtlasPerfTracer
.
isPerfTraceEnabled
(
PERF_LOG
))
{
perf
=
AtlasPerfTracer
.
getPerfTracer
(
PERF_LOG
,
"EntityREST.getByUniqueAttributes("
+
typeName
+
","
+
attributes
+
")"
);
}
AtlasEntityType
entityType
=
ensureEntityType
(
typeName
);
validateUniqueAttribute
(
entityType
,
attributes
);
return
entitiesStore
.
getByUniqueAttributes
(
entityType
,
attributes
);
}
finally
{
AtlasPerfTracer
.
log
(
perf
);
}
}
/**
...
...
@@ -132,7 +151,17 @@ public class EntityREST {
@Consumes
(
Servlets
.
JSON_MEDIA_TYPE
)
@Produces
(
Servlets
.
JSON_MEDIA_TYPE
)
public
EntityMutationResponse
createOrUpdate
(
AtlasEntityWithExtInfo
entity
)
throws
AtlasBaseException
{
AtlasPerfTracer
perf
=
null
;
try
{
if
(
AtlasPerfTracer
.
isPerfTraceEnabled
(
PERF_LOG
))
{
perf
=
AtlasPerfTracer
.
getPerfTracer
(
PERF_LOG
,
"EntityREST.createOrUpdate()"
);
}
return
entitiesStore
.
createOrUpdate
(
new
AtlasEntityStream
(
entity
),
false
);
}
finally
{
AtlasPerfTracer
.
log
(
perf
);
}
}
/*******
...
...
@@ -147,12 +176,23 @@ public class EntityREST {
public
EntityMutationResponse
partialUpdateEntityByUniqueAttrs
(
@PathParam
(
"typeName"
)
String
typeName
,
@Context
HttpServletRequest
servletRequest
,
AtlasEntityWithExtInfo
entityInfo
)
throws
Exception
{
AtlasEntityType
entityType
=
ensureEntityType
(
typeName
);
AtlasPerfTracer
perf
=
null
;
try
{
Map
<
String
,
Object
>
uniqueAttributes
=
getAttributes
(
servletRequest
);
if
(
AtlasPerfTracer
.
isPerfTraceEnabled
(
PERF_LOG
))
{
perf
=
AtlasPerfTracer
.
getPerfTracer
(
PERF_LOG
,
"EntityREST.partialUpdateEntityByUniqueAttrs("
+
typeName
+
","
+
uniqueAttributes
+
")"
);
}
AtlasEntityType
entityType
=
ensureEntityType
(
typeName
);
validateUniqueAttribute
(
entityType
,
uniqueAttributes
);
return
entitiesStore
.
updateByUniqueAttributes
(
entityType
,
uniqueAttributes
,
entityInfo
);
}
finally
{
AtlasPerfTracer
.
log
(
perf
);
}
}
/*******
...
...
@@ -168,8 +208,17 @@ public class EntityREST {
public
EntityMutationResponse
partialUpdateEntityAttrByGuid
(
@PathParam
(
"guid"
)
String
guid
,
@QueryParam
(
"name"
)
String
attrName
,
Object
attrValue
)
throws
Exception
{
AtlasPerfTracer
perf
=
null
;
try
{
if
(
AtlasPerfTracer
.
isPerfTraceEnabled
(
PERF_LOG
))
{
perf
=
AtlasPerfTracer
.
getPerfTracer
(
PERF_LOG
,
"EntityREST.partialUpdateEntityAttrByGuid("
+
guid
+
","
+
attrName
+
")"
);
}
return
entitiesStore
.
updateEntityAttributeByGuid
(
guid
,
attrName
,
attrValue
);
}
finally
{
AtlasPerfTracer
.
log
(
perf
);
}
}
/**
...
...
@@ -182,7 +231,17 @@ public class EntityREST {
@Consumes
({
Servlets
.
JSON_MEDIA_TYPE
,
MediaType
.
APPLICATION_JSON
})
@Produces
(
Servlets
.
JSON_MEDIA_TYPE
)
public
EntityMutationResponse
deleteByGuid
(
@PathParam
(
"guid"
)
final
String
guid
)
throws
AtlasBaseException
{
AtlasPerfTracer
perf
=
null
;
try
{
if
(
AtlasPerfTracer
.
isPerfTraceEnabled
(
PERF_LOG
))
{
perf
=
AtlasPerfTracer
.
getPerfTracer
(
PERF_LOG
,
"EntityREST.deleteByGuid("
+
guid
+
")"
);
}
return
entitiesStore
.
deleteById
(
guid
);
}
finally
{
AtlasPerfTracer
.
log
(
perf
);
}
}
/**
...
...
@@ -197,10 +256,21 @@ public class EntityREST {
@Path
(
"/uniqueAttribute/type/{typeName}"
)
public
EntityMutationResponse
deleteByUniqueAttribute
(
@PathParam
(
"typeName"
)
String
typeName
,
@Context
HttpServletRequest
servletRequest
)
throws
AtlasBaseException
{
AtlasEntityType
entityType
=
ensureEntityType
(
typeName
);
AtlasPerfTracer
perf
=
null
;
try
{
Map
<
String
,
Object
>
attributes
=
getAttributes
(
servletRequest
);
if
(
AtlasPerfTracer
.
isPerfTraceEnabled
(
PERF_LOG
))
{
perf
=
AtlasPerfTracer
.
getPerfTracer
(
PERF_LOG
,
"EntityREST.deleteByUniqueAttribute("
+
typeName
+
","
+
attributes
+
")"
);
}
AtlasEntityType
entityType
=
ensureEntityType
(
typeName
);
return
entitiesStore
.
deleteByUniqueAttributes
(
entityType
,
attributes
);
}
finally
{
AtlasPerfTracer
.
log
(
perf
);
}
}
/**
...
...
@@ -212,6 +282,12 @@ public class EntityREST {
@Path
(
"/guid/{guid}/classification/{classificationName}"
)
@Produces
(
Servlets
.
JSON_MEDIA_TYPE
)
public
AtlasClassification
getClassification
(
@PathParam
(
"guid"
)
String
guid
,
@PathParam
(
"classificationName"
)
final
String
classificationName
)
throws
AtlasBaseException
{
AtlasPerfTracer
perf
=
null
;
try
{
if
(
AtlasPerfTracer
.
isPerfTraceEnabled
(
PERF_LOG
))
{
perf
=
AtlasPerfTracer
.
getPerfTracer
(
PERF_LOG
,
"EntityREST.getClassification("
+
guid
+
","
+
classificationName
+
")"
);
}
if
(
StringUtils
.
isEmpty
(
guid
))
{
throw
new
AtlasBaseException
(
AtlasErrorCode
.
INSTANCE_GUID_NOT_FOUND
,
guid
);
...
...
@@ -219,6 +295,9 @@ public class EntityREST {
ensureClassificationType
(
classificationName
);
return
entitiesStore
.
getClassification
(
guid
,
classificationName
);
}
finally
{
AtlasPerfTracer
.
log
(
perf
);
}
}
/**
...
...
@@ -230,17 +309,21 @@ public class EntityREST {
@Path
(
"/guid/{guid}/classifications"
)
@Produces
(
Servlets
.
JSON_MEDIA_TYPE
)
public
AtlasClassification
.
AtlasClassifications
getClassifications
(
@PathParam
(
"guid"
)
String
guid
)
throws
AtlasBaseException
{
AtlasPerfTracer
perf
=
null
;
try
{
if
(
AtlasPerfTracer
.
isPerfTraceEnabled
(
PERF_LOG
))
{
perf
=
AtlasPerfTracer
.
getPerfTracer
(
PERF_LOG
,
"EntityREST.getClassifications("
+
guid
+
")"
);
}
if
(
StringUtils
.
isEmpty
(
guid
))
{
throw
new
AtlasBaseException
(
AtlasErrorCode
.
INSTANCE_GUID_NOT_FOUND
,
guid
);
}
AtlasClassification
.
AtlasClassifications
classifications
=
new
AtlasClassification
.
AtlasClassifications
();
final
List
<
AtlasClassification
>
classificationList
=
entitiesStore
.
getClassifications
(
guid
);
classifications
.
setList
(
classificationList
);
return
classifications
;
return
new
AtlasClassification
.
AtlasClassifications
(
entitiesStore
.
getClassifications
(
guid
));
}
finally
{
AtlasPerfTracer
.
log
(
perf
);
}
}
/**
...
...
@@ -252,12 +335,21 @@ public class EntityREST {
@Consumes
({
Servlets
.
JSON_MEDIA_TYPE
,
MediaType
.
APPLICATION_JSON
})
@Produces
(
Servlets
.
JSON_MEDIA_TYPE
)
public
void
addClassifications
(
@PathParam
(
"guid"
)
final
String
guid
,
List
<
AtlasClassification
>
classifications
)
throws
AtlasBaseException
{
AtlasPerfTracer
perf
=
null
;
try
{
if
(
AtlasPerfTracer
.
isPerfTraceEnabled
(
PERF_LOG
))
{
perf
=
AtlasPerfTracer
.
getPerfTracer
(
PERF_LOG
,
"EntityREST.addClassifications("
+
guid
+
")"
);
}
if
(
StringUtils
.
isEmpty
(
guid
))
{
throw
new
AtlasBaseException
(
AtlasErrorCode
.
INSTANCE_GUID_NOT_FOUND
,
guid
);
}
entitiesStore
.
addClassifications
(
guid
,
classifications
);
}
finally
{
AtlasPerfTracer
.
log
(
perf
);
}
}
/**
...
...
@@ -270,6 +362,12 @@ public class EntityREST {
@Produces
(
Servlets
.
JSON_MEDIA_TYPE
)
public
void
deleteClassification
(
@PathParam
(
"guid"
)
String
guid
,
@PathParam
(
"classificationName"
)
final
String
classificationName
)
throws
AtlasBaseException
{
AtlasPerfTracer
perf
=
null
;
try
{
if
(
AtlasPerfTracer
.
isPerfTraceEnabled
(
PERF_LOG
))
{
perf
=
AtlasPerfTracer
.
getPerfTracer
(
PERF_LOG
,
"EntityREST.deleteClassification("
+
guid
+
","
+
classificationName
+
")"
);
}
if
(
StringUtils
.
isEmpty
(
guid
))
{
throw
new
AtlasBaseException
(
AtlasErrorCode
.
INSTANCE_GUID_NOT_FOUND
,
guid
);
...
...
@@ -278,6 +376,9 @@ public class EntityREST {
ensureClassificationType
(
classificationName
);
entitiesStore
.
deleteClassifications
(
guid
,
new
ArrayList
<
String
>()
{{
add
(
classificationName
);}}
);
}
finally
{
AtlasPerfTracer
.
log
(
perf
);
}
}
/******************************************************************/
...
...
@@ -292,14 +393,21 @@ public class EntityREST {
@Consumes
(
Servlets
.
JSON_MEDIA_TYPE
)
@Produces
(
Servlets
.
JSON_MEDIA_TYPE
)
public
AtlasEntitiesWithExtInfo
getByGuids
(
@QueryParam
(
"guid"
)
List
<
String
>
guids
)
throws
AtlasBaseException
{
AtlasPerfTracer
perf
=
null
;
try
{
if
(
AtlasPerfTracer
.
isPerfTraceEnabled
(
PERF_LOG
))
{
perf
=
AtlasPerfTracer
.
getPerfTracer
(
PERF_LOG
,
"EntityREST.getByGuids("
+
guids
+
")"
);
}
if
(
CollectionUtils
.
isEmpty
(
guids
))
{
throw
new
AtlasBaseException
(
AtlasErrorCode
.
INSTANCE_GUID_NOT_FOUND
,
guids
);
}
AtlasEntitiesWithExtInfo
entities
=
entitiesStore
.
getByIds
(
guids
);
return
entities
;
return
entitiesStore
.
getByIds
(
guids
);
}
finally
{
AtlasPerfTracer
.
log
(
perf
);
}
}
/**
...
...
@@ -311,10 +419,20 @@ public class EntityREST {
@Consumes
(
Servlets
.
JSON_MEDIA_TYPE
)
@Produces
(
Servlets
.
JSON_MEDIA_TYPE
)
public
EntityMutationResponse
createOrUpdate
(
AtlasEntitiesWithExtInfo
entities
)
throws
AtlasBaseException
{
AtlasPerfTracer
perf
=
null
;
try
{
if
(
AtlasPerfTracer
.
isPerfTraceEnabled
(
PERF_LOG
))
{
perf
=
AtlasPerfTracer
.
getPerfTracer
(
PERF_LOG
,
"EntityREST.createOrUpdate(entityCount="
+
(
entities
==
null
||
entities
.
getEntities
()
==
null
?
0
:
entities
.
getEntities
().
size
())
+
")"
);
}
EntityStream
entityStream
=
new
AtlasEntityStream
(
entities
);
return
entitiesStore
.
createOrUpdate
(
entityStream
,
false
);
}
finally
{
AtlasPerfTracer
.
log
(
perf
);
}
}
/**
...
...
@@ -325,7 +443,17 @@ public class EntityREST {
@Consumes
(
Servlets
.
JSON_MEDIA_TYPE
)
@Produces
(
Servlets
.
JSON_MEDIA_TYPE
)
public
EntityMutationResponse
deleteByGuids
(
@QueryParam
(
"guid"
)
final
List
<
String
>
guids
)
throws
AtlasBaseException
{
AtlasPerfTracer
perf
=
null
;
try
{
if
(
AtlasPerfTracer
.
isPerfTraceEnabled
(
PERF_LOG
))
{
perf
=
AtlasPerfTracer
.
getPerfTracer
(
PERF_LOG
,
"EntityREST.deleteByGuids("
+
guids
+
")"
);
}
return
entitiesStore
.
deleteByIds
(
guids
);
}
finally
{
AtlasPerfTracer
.
log
(
perf
);
}
}
/**
...
...
@@ -336,6 +464,13 @@ public class EntityREST {
@Consumes
({
Servlets
.
JSON_MEDIA_TYPE
,
MediaType
.
APPLICATION_JSON
})
@Produces
(
Servlets
.
JSON_MEDIA_TYPE
)
public
void
addClassification
(
ClassificationAssociateRequest
request
)
throws
AtlasBaseException
{
AtlasPerfTracer
perf
=
null
;
try
{
if
(
AtlasPerfTracer
.
isPerfTraceEnabled
(
PERF_LOG
))
{
perf
=
AtlasPerfTracer
.
getPerfTracer
(
PERF_LOG
,
"EntityREST.addClassification("
+
request
+
")"
);
}
AtlasClassification
classification
=
request
==
null
?
null
:
request
.
getClassification
();
List
<
String
>
entityGuids
=
request
==
null
?
null
:
request
.
getEntityGuids
();
...
...
@@ -348,6 +483,9 @@ public class EntityREST {
}
entitiesStore
.
addClassification
(
entityGuids
,
classification
);
}
finally
{
AtlasPerfTracer
.
log
(
perf
);
}
}
private
AtlasEntityType
ensureEntityType
(
String
typeName
)
throws
AtlasBaseException
{
...
...
webapp/src/main/java/org/apache/atlas/web/rest/LineageREST.java
View file @
df7d7689
...
...
@@ -23,7 +23,9 @@ import org.apache.atlas.discovery.AtlasLineageService;
import
org.apache.atlas.exception.AtlasBaseException
;
import
org.apache.atlas.model.lineage.AtlasLineageInfo
;
import
org.apache.atlas.model.lineage.AtlasLineageInfo.LineageDirection
;
import
org.apache.atlas.utils.AtlasPerfTracer
;
import
org.apache.atlas.web.util.Servlets
;
import
org.slf4j.Logger
;
import
javax.inject.Inject
;
import
javax.inject.Singleton
;
...
...
@@ -43,6 +45,8 @@ import javax.ws.rs.core.Context;
@Path
(
"v2/lineage"
)
@Singleton
public
class
LineageREST
{
private
static
final
Logger
PERF_LOG
=
AtlasPerfTracer
.
getPerfLogger
(
"rest.LineageREST"
);
private
final
AtlasLineageService
atlasLineageService
;
private
static
final
String
DEFAULT_DIRECTION
=
"BOTH"
;
private
static
final
String
DEFAULT_DEPTH
=
"3"
;
...
...
@@ -73,9 +77,17 @@ public class LineageREST {
public
AtlasLineageInfo
getLineageGraph
(
@PathParam
(
"guid"
)
String
guid
,
@QueryParam
(
"direction"
)
@DefaultValue
(
DEFAULT_DIRECTION
)
LineageDirection
direction
,
@QueryParam
(
"depth"
)
@DefaultValue
(
DEFAULT_DEPTH
)
int
depth
)
throws
AtlasBaseException
{
AtlasPerfTracer
perf
=
null
;
AtlasLineageInfo
ret
=
atlasLineageService
.
getAtlasLineageInfo
(
guid
,
direction
,
depth
);
try
{
if
(
AtlasPerfTracer
.
isPerfTraceEnabled
(
PERF_LOG
))
{
perf
=
AtlasPerfTracer
.
getPerfTracer
(
PERF_LOG
,
"LineageREST.getLineageGraph("
+
guid
+
","
+
direction
+
","
+
depth
+
")"
);
}
return
ret
;
return
atlasLineageService
.
getAtlasLineageInfo
(
guid
,
direction
,
depth
);
}
finally
{
AtlasPerfTracer
.
log
(
perf
);
}
}
}
\ No newline at end of file
webapp/src/main/java/org/apache/atlas/web/rest/TypesREST.java
View file @
df7d7689
...
...
@@ -29,8 +29,10 @@ import org.apache.atlas.model.typedef.AtlasTypeDefHeader;
import
org.apache.atlas.model.typedef.AtlasTypesDef
;
import
org.apache.atlas.store.AtlasTypeDefStore
;
import
org.apache.atlas.type.AtlasTypeUtil
;
import
org.apache.atlas.utils.AtlasPerfTracer
;
import
org.apache.atlas.web.util.Servlets
;
import
org.apache.http.annotation.Experimental
;
import
org.slf4j.Logger
;
import
javax.inject.Singleton
;
import
javax.servlet.http.HttpServletRequest
;
...
...
@@ -52,6 +54,7 @@ import java.util.Set;
@Path
(
"v2/types"
)
@Singleton
public
class
TypesREST
{
private
static
final
Logger
PERF_LOG
=
AtlasPerfTracer
.
getPerfLogger
(
"rest.TypesREST"
);
private
final
AtlasTypeDefStore
typeDefStore
;
...
...
@@ -282,9 +285,18 @@ public class TypesREST {
@Consumes
(
Servlets
.
JSON_MEDIA_TYPE
)
@Produces
(
Servlets
.
JSON_MEDIA_TYPE
)
public
AtlasTypesDef
createAtlasTypeDefs
(
final
AtlasTypesDef
typesDef
)
throws
AtlasBaseException
{
Atlas
TypesDef
ret
=
typeDefStore
.
createTypesDef
(
typesDef
)
;
Atlas
PerfTracer
perf
=
null
;
return
ret
;
try
{
if
(
AtlasPerfTracer
.
isPerfTraceEnabled
(
PERF_LOG
))
{
perf
=
AtlasPerfTracer
.
getPerfTracer
(
PERF_LOG
,
"TypesREST.createAtlasTypeDefs("
+
AtlasTypeUtil
.
toDebugString
(
typesDef
)
+
")"
);
}
return
typeDefStore
.
createTypesDef
(
typesDef
);
}
finally
{
AtlasPerfTracer
.
log
(
perf
);
}
}
/**
...
...
@@ -301,9 +313,18 @@ public class TypesREST {
@Produces
(
Servlets
.
JSON_MEDIA_TYPE
)
@Experimental
public
AtlasTypesDef
updateAtlasTypeDefs
(
final
AtlasTypesDef
typesDef
)
throws
AtlasBaseException
{
Atlas
TypesDef
ret
=
typeDefStore
.
updateTypesDef
(
typesDef
)
;
Atlas
PerfTracer
perf
=
null
;
return
ret
;
try
{
if
(
AtlasPerfTracer
.
isPerfTraceEnabled
(
PERF_LOG
))
{
perf
=
AtlasPerfTracer
.
getPerfTracer
(
PERF_LOG
,
"TypesREST.updateAtlasTypeDefs("
+
AtlasTypeUtil
.
toDebugString
(
typesDef
)
+
")"
);
}
return
typeDefStore
.
updateTypesDef
(
typesDef
);
}
finally
{
AtlasPerfTracer
.
log
(
perf
);
}
}
/**
...
...
@@ -319,7 +340,18 @@ public class TypesREST {
@Produces
(
Servlets
.
JSON_MEDIA_TYPE
)
@Experimental
public
void
deleteAtlasTypeDefs
(
final
AtlasTypesDef
typesDef
)
throws
AtlasBaseException
{
AtlasPerfTracer
perf
=
null
;
try
{
if
(
AtlasPerfTracer
.
isPerfTraceEnabled
(
PERF_LOG
))
{
perf
=
AtlasPerfTracer
.
getPerfTracer
(
PERF_LOG
,
"TypesREST.deleteAtlasTypeDefs("
+
AtlasTypeUtil
.
toDebugString
(
typesDef
)
+
")"
);
}
typeDefStore
.
deleteTypesDef
(
typesDef
);
}
finally
{
AtlasPerfTracer
.
log
(
perf
);
}
}
/**
...
...
@@ -334,4 +366,5 @@ public class TypesREST {
}
return
ret
;
}}
}
}
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment