Configuration
This Page Explains All Configuration Used By Question & QuestionSet Service
Last updated
This Page Explains All Configuration Used By Question & QuestionSet Service
Last updated
We have 3 components under Question & QuestionSet Service:
inquiry-api-service (micro-service)
async-questionset-publish (flink job for data pipeline)
questionset-republish (flink job for data pipeline)
key | default value | description | Optional/Required | Category |
---|---|---|---|---|
Rest other configuration of async-questionset-publish job is applicable for this job as well with all default values.
Key | Default Value | Description | Required/Optional | Category |
---|---|---|---|---|
Key | Default Value | Description | Required/Optional | Category |
---|---|---|---|---|
play.http.parser.maxMemoryBuffer
50MB
Play Framework Config. It allows to configure memory size for request coming to service
Optional
Play Framework Config.
akka.http.parsing.max-content-length
50MB
Play Framework Config. It allows to configure size of request coming to service
Optional
Play Framework Config.
schema.base_path
../../schemas/
Base Path for Object Level Schema.
Required
Microservice Config
cassandra.lp.connection
127.0.0.1:9042
IP and Port of Cassandra Database
Required
Database Config
redis.host
"localhost"
IP of Redis Database
Required
Database Config
redis.port
6379
Port of Redis Database
Optional
Database Config
redis.maxConnections
128
Maximum No of connection allowed
Optional
Database Config
graph.dir
/data/graphDB
Graph DB (Neo4j) Configuration
Optional
Database Config
akka.request_timeout
30
Request timeout
Optional
Microservice Config
environment.id
ekstep
An unique id for representing env
Required
Microservice Config
graph.ids
["domain"]
Graph DB (Neo4j) Configuration
Optional
Database Config
graph.passport.key.base
31b6fd1c4d64e745c867e61a45edc34a
Graph DB (Neo4j) Configuration
Required
Database Config
route.domain
"bolt://localhost:7687"
Graph DB (Neo4j) Configuration
Required
Database Config
route.bolt.write.domain
"bolt://localhost:7687"
Graph DB (Neo4j) Configuration
Required
Database Config
route.bolt.read.domain
"bolt://localhost:7687"
Graph DB (Neo4j) Configuration
Required
Database Config
route.all
"bolt://localhost:7687"
Graph DB (Neo4j) Configuration
Required
Database Config
route.bolt.write.all
"bolt://localhost:7687"
Graph DB (Neo4j) Configuration
Required
Database Config
route.bolt.read.all
"bolt://localhost:7687"
Graph DB (Neo4j) Configuration
Required
Database Config
shard.id
1
Graph DB (Neo4j) Configuration
Required
Database Config
platform.auth.check.enabled
FALSE
Flag to enbale disable authentication check
Optional
Microservice Config
platform.cache.ttl
3600000
Expiry Time for Cached Record
Optional
Microservice Config
telemetry_env
dev
Environment Name for Telemetry
Optional
Microservice Config
installation.id
ekstep
Installation Id
Optional
Microservice Config
kafka.urls
"localhost:9092"
Kafka Host & Port
Required
Microservice Config
kafka.topic.send.enable
TRUE
This flag is used to decide whether to send the publish event to kafka topic or not
Optional
Microservice Config
kafka.topics.instruction
"local.assessment.publish.request"
Kafka Topic name for publish api
Required
Microservice Config
objectcategorydefinition.keyspace
"category_store"
Keyspace Name from where service should read primary category definition
Required
Microservice Config
questionset.keyspace
"hierarchy_store"
Keyspace Name where questionset hierarchy and other external data (e.g: instructions) should be saved.
Required
Microservice Config
question.keyspace
"question_store"
Keyspace Name where question external data (e.g: body, editorState, etc) should be saved.
Required
Microservice Config
question.list.limit
20
Number of Identifiers allowed in Question List api
Optional
Microservice Config
neo4j_objecttypes_enabled
["Question"]
This config is used to decide whether to write data in graph or not from hierarchy children
Optional
Microservice Config
composite.search.url
http://localhost:9000
Host Url of Knowlg search service
Required
Microservice Config
import.request_size_limit
200
Request limit for import api
Optional
Microservice Config
import.output_topic_name
"local.auto.creation.job.request"
Kafka topic name for import api
Required
Microservice Config
import.required_props.question
["name", "code", "mimeType", "framework", "channel"]
Name of required properties of Question object for import api
Optional
Microservice Config
import.required_props.questionset
["name", "code", "mimeType", "framework", "channel"]
Name of required properties of QuestionSet object for import api
Optional
Microservice Config
import.remove_props.question
[]
Name of properties which need to be removed from Question object for import api
Optional
Microservice Config
import.remove_props.questionset
[]
Name of properties which need to be removed from QuestionSet object for import api
Optional
Microservice Config
root_node_visibility
["Default","Private"]
Allowed Visibility for Root QuestionSet object
Optional
Microservice Config
master.category.validation.enabled
Yes
This flag is used to control framework categories validation
Optional
Microservice Config
question.cache.enable
true
This flag control caching data for Live Questions into Redis Cache
Optional
Microservice Config
questionset.cache.enable
true
This flag control caching data for Live QuestionSets into Redis Cache
Optional
Microservice Config
assessment.copy.origin_data
["name", "author", "license", "organisation"]
This Config holds property names which should be populated as originData into copied node.
Optional
Microservice Config
assessment.copy.props_to_remove
["downloadUrl", "artifactUrl", "variants","createdOn", "collections", "children", "lastUpdatedOn", "SYS_INTERNAL_LAST_UPDATED_ON","versionKey", "s3Key", "status", "pkgVersion", "toc_url", "mimeTypesCount","contentTypesCount","leafNodesCount", "childNodes", "prevState", "lastPublishedOn","flagReasons", "compatibilityLevel", "size", "publishChecklist", "publishComment","LastPublishedBy", "rejectReasons", "rejectComment", "gradeLevel", "subject","medium", "board", "topic", "purpose", "subtopic", "contentCredits","owner", "collaborators", "creators", "contributors", "badgeAssertions", "dialcodes","concepts", "keywords", "reservedDialcodes", "dialcodeRequired", "leafNodes", "sYS_INTERNAL_LAST_UPDATED_ON","prevStatus","lastPublishedBy", "streamingUrl"]
This Config holds all property names which should be removed while copying Question/QuestionSet object.
Optional
Microservice Config
cloud_storage_container
NA
This Config holds container name of cloud storage where data should be stored/read.
Required
Cloud Storage Config
cloudstorage.metadata.replace_absolute_path
false
This flag is used for storing all metadata having cloud storage path as cloud agnostic path in db and return absolute path in read api responses. By default it is disabled.
Optional
Microservice Config
cloudstorage.metadata.list
NA
This config holds list of all property where cloud storage path can be present. This Config will be used only if cloudstorage.metadata.replace_absolute_path is enabled.
Optional
Microservice Config
cloudstorage.relative_path_prefix
CLOUD_STORAGE_BASE_PATH
This config holds the string value which should be used in place of cloud storage base url. This config will be used only if cloudstorage.metadata.replace_absolute_path is enabled.
Optional
Microservice Config
cloudstorage.read_base_pat
NA
This config holds the storage base url or cname url which should be used to convert urls to absolute url before returning data to user. This config will be used only if cloudstorage.metadata.replace_absolute_path is enabled.
Optional
Microservice Config
cloudstorage.write_base_path
NA
This config can hold multiple cloud storage base url which should be should be replaced by the value of cloudstorage.relative_path_prefix. This config will be used only if cloudstorage.metadata.replace_absolute_path is enabled.
Optional
Microservice Config
kafka.input.topic
{{ env_name }}.assessment.publish.request
This config holds value of input kafka topic name from where events should be read for processing
Required
Kafka Config
kafka.post_publish.topic
{{ env_name }}.assessment.postpublish.request
This config holds value of kafka topic name for any post publish activity.
Required
Kafka Config
kafka.groupId
{{ env_name }}-questionset-publish-group
This config holds the group name for kafka input topic where flink checkpointer is maintained.
Optional
Kafka Config
task.consumer.parallelism
1
This config decides how many threads/process to run for consumer
Optional
Flink Config
task.parallelism
1
This config decides how many process to run in parallel for event processing.
Optional
Flink Config
task.router.parallelism
1
This config decides how many process to run for event router.
Optional
Flink Config
question.keyspace
{{instance}}_question_store
Cassandra db keyspace name where question data is stored. instance variable will have env name
Required
Database Config
question.table
question_data
Cassandra db table name where question data is stored.
Optional
Database Config
questionset.keyspace
{{instance}}_hierarchy_store
Cassandra db keyspace name where questionset data is stored. instance variable will have env name
Required
Database Config
questionset.table
questionset_hierarchy
Cassandra db table name where questionset data is stored.
Optional
Database Config
print_service.base_url
NA
Print Service Host Url should be configured.
Required
Job Config
cloud_storage_type
NA
This config holds cloud storage provider name. e.g: azure, aws, etc.
Required
Cloud Storage Config
cloud_storage_key
NA
This Config holds unique key which represents specific cloud storage account
Required
Cloud Storage Config
cloud_storage_secret
NA
This Config holds secret key to access cloud storage.
Required
Cloud Storage Config
cloud_storage_endpoint
""
This Config holds endpoint of cloud storage, if needed by cloud storage.
Optional
Cloud Storage Config
cloud_storage_container
NA
This Config holds container name of cloud storage where data should be stored/read.
Required
Cloud Storage Config
master.category.validation.enabled
Yes
This flag is used to control framework categories validation
Optional
Job Config
cloudstorage.metadata.replace_absolute_path
false
This flag is used for storing all metadata having cloud storage path as cloud agnostic path in db and return absolute path in read api responses. By default it is disabled.
Optional
Job Config
cloudstorage.metadata.list
["appIcon","posterImage","artifactUrl","downloadUrl","variants","previewUrl","pdfUrl"]
This config holds list of all property where cloud storage path can be present. This Config will be used only if cloudstorage.metadata.replace_absolute_path is enabled.
Optional
Job Config
cloudstorage.relative_path_prefix
CLOUD_STORAGE_BASE_PATH
This config holds the string value which should be used in place of cloud storage base url. This config will be used only if cloudstorage.metadata.replace_absolute_path is enabled.
Optional
Job Config
cloudstorage.read_base_pat
"https://sunbirddevbbpublic.blob.core.windows.net"
This config holds the storage base url or cname url which should be used to convert urls to absolute url before returning data to user. This config will be used only if cloudstorage.metadata.replace_absolute_path is enabled.
Optional
Job Config
cloudstorage.write_base_path
["https://sunbirddevbbpublic.blob.core.windows.net"]
This config can hold multiple cloud storage base url which should be should be replaced by the value of cloudstorage.relative_path_prefix. This config will be used only if cloudstorage.metadata.replace_absolute_path is enabled.
Optional
Job Config
kafka.input.topic
{{ env_name }}.assessment.republish.request
This config holds value of input kafka topic name from where events should be read for processing
Required
Kafka Config
kafka.post_publish.topic
{{ env_name }}.assessment.postpublish.request
This config holds value of kafka topic name for any post re-publish activity.
Required
Kafka Config
kafka.groupId
{{ env_name }}-questionset-republish-group
This config holds the group name for kafka input topic where flink checkpointer is maintained.
Required
Kafka Config