Yandex Cloud
Search
Contact UsGet started
  • Blog
  • Pricing
  • Documentation
  • All Services
  • System Status
    • Featured
    • Infrastructure & Network
    • Data Platform
    • Containers
    • Developer tools
    • Serverless
    • Security
    • Monitoring & Resources
    • ML & AI
    • Business tools
  • All Solutions
    • By industry
    • By use case
    • Economics and Pricing
    • Security
    • Technical Support
    • Customer Stories
    • Cloud credits to scale your IT product
    • Gateway to Russia
    • Cloud for Startups
    • Education and Science
    • Yandex Cloud Partner program
  • Blog
  • Pricing
  • Documentation
© 2025 Direct Cursus Technology L.L.C.
Yandex Load Testing
  • Getting started
    • Service overview
    • Agent
    • Agent selection
    • Load generator
    • Load profile
      • Overview
      • URI
      • URIPOST
      • PHANTOM
      • RAW
      • HTTP_JSON
      • GRPC_JSON
    • Testing threads
    • Autostop
    • Resource Check
    • Test agent monitoring
    • Reports
    • Load test regressions
    • Load test results
    • Comparing load test results
    • Test artifacts
    • Quotas and limits
  • Access management
  • Pricing policy
  • Terraform reference
  • Audit Trails events
  • Release notes
  1. Concepts
  2. Payloads and types
  3. PHANTOM

PHANTOM

Written by
Yandex Cloud
Updated at October 1, 2024

Type of test data for the Phantom load generator. It allows sending any combinations of HTTP requests based on any methods to the server as is. With this format, you can make complex combinations of requests. It is well suited for generating requests from service logs, but not for manual configuration.

The test data type is specified when creating a test.

Data format:

<byte_length_1> <tag_1>\r\n
<request_headers_1>\r\n
<request_body_1>\r\n
<byte_length_2> <tag_2>\r\n
<request_headers_2>\r\n
<request_body_2>\r\n
...
<byte_length_N> <tag_N>\r\n
<request_headers_N>\r\n
<request_body_N>\r\n

Where:

  • byte_length: Request body length in bytes (not in characters).
  • request_headers: Request headers.
  • request_body: Request body.
  • \r\n: Newline characters required after the request body.

Examples of test data:

  • GET requests:

    73 good
    GET / HTTP/1.0
    Host: xxx.tanks.example.com
    User-Agent: xxx (shell 1)
    
    77 bad
    GET /abra HTTP/1.0
    Host: xxx.tanks.example.com
    User-Agent: xxx (shell 1)
    
    78 unknown
    GET /ab ra HTTP/1.0
    Host: xxx.tanks.example.com
    User-Agent: xxx (shell 1)
    
  • POST requests (binary data):

    904
    POST /upload/2 HTTP/1.0
    Content-Length: 801
    Host: xxxxxxxxx.dev.example.com
    User-Agent: xxx (shell 1)
    
    ^.^........W.j^1^.^.^.²..^^.i.^B.P..-!(.l/Y..V^.      ...L?...S'NR.^^vm...3Gg@s...d'.\^.5N.$NF^,.Z^.aTE^.
    ._.[..k#L^ƨ`\RE.J.<.!,.q5.F^՚iΔĬq..^6..P..тH.`..i2
    .".uuzs^^F2...Rh.&.U.^^..J.P@.A......x..lǝy^?.u.p{4..g...m.,..R^.^.^......].^^.^J...p.ifTF0<.s.9V.o5<..%!6ļS.ƐǢ..㱋....C^&.....^.^y...v]^YT.1.#K.ibc...^.26...   ..7.
    b.$...j6.٨f...W.R7.^1.3....K`%.&^..d..{{      l0..^\..^X.g.^.r.(!.^^...4.1.$\ .%.8$(.n&..^^q.,.Q..^.D^.].^.R9.kE.^.$^.I..<..B^..^.h^^C.^E.|....3o^.@..Z.^.s.$[v.
    
    527
    POST /upload/3 HTTP/1.0
    Content-Length: 424
    Host: xxxxxxxxx.dev.example.com
    User-Agent: xxx (shell 1)
    
    ^.^........QMO.0^.++^zJw.ر^$^.^Ѣ.^V.J....vM.8r&.T+...{@pk%~C.G../z顲^.7....l...-.^W"cR..... .&^?u.U^^.^.....{^.^..8.^.^.I.EĂ.p...'^.3.Tq..@R8....RAiBU..1.Bd*".7+.
    .Ol.j=^.3..n....wp..,Wg.y^.T..~^..
    
  • POST requests (multipart):

    533
    POST /updateShopStatus? HTTP/1.0
    User-Agent: xxx/1.2.3
    Host: xxxxxxxxx.dev.example.com
    Keep-Alive: 300
    Content-Type: multipart/form-data; boundary=AGHTUNG
    Content-Length:334
    Connection: Close
    
    --AGHTUNG
    Content-Disposition: form-data; name="host"
    
    load-test-shop-updatestatus.ru
    --AGHTUNG
    Content-Disposition: form-data; name="user_id"
    
    1
    --AGHTUNG
    Content-Disposition: form-data; name="wsw-fields"
    
    <wsw-fields><wsw-field name="moderate-code"><wsw-value>disable</wsw-value></wsw-field></wsw-fields>
    --AGHTUNG--
    

Note

You can combine any of the above request types in a single file.
There can be any number of empty lines between requests in a file, as long as there is no header specifying the size.

For sample generators of test data in this format, see the load testing tool documentation.

Was the article helpful?

Previous
URIPOST
Next
RAW
© 2025 Direct Cursus Technology L.L.C.