http://coldfusion.com logo
Docs
Join the conversationJoin Slack
Channels
adobe
advent-of-code
auwcl
aws
books
bot-dev
box-products
cfeclipse
cfkrauts
cflint
cfml-beginners
cfml-general
cfml-tuning
cfsummit2022
cfwheels
ci
community_courses
css
devops-general
docker
docker-commandbox
documentation
events
friday-puzzle
fusion-reactor
fw1
ide
java-and-jvm
javascript
jobs
jobs-non-us
linen-dev
lucee
masacms
meta
migrations
mura
music
nosql
object-oriented
orm
perf-monitor
prog-general
slack-help
sql
taffy
testing
version-control
vuejs
water-cooler
Powered by Linen
taffy
  • a

    ancebal

    08/26/2022, 7:28 PM
    Hello. Is there a best practice for logging Taffy requests for performance related issues? Is it a matter of capturing the X-TIME-IN-ONTAFFYREQUEST and X-TIME-IN-RESOURCE headers and go from there?
  • a

    atuttle

    08/29/2022, 1:54 PM
    @ancebal that’s a fine place to start. once you find a slow resource, you’ll want to add similar metrics around each of its steps to see where the bottlenecks are so that you can optimize them.
  • r

    Ray

    09/27/2022, 3:00 PM
    Using taffy 3.6.0 with Lucee 5.3.7.48 to serve data to a mobile app. The data seems to be cached even though no caching is configured. Only way to get it to pull new data is to 'Reload API Cache' via taffy dashboard. Started on one cfc now seeing it on another. Reloading API cache works consistently but means logging into dashboad every few hours to kick start it again. The query pulls the data looking forward 6 hours. So i reset it at 7AM and the dataset has 7AM to 1PM. Everything works as expected during that window then at 1PM the dataset returns empty. What it should be returning at 10AM is 10AM - 4PM and 11-5 etc... But at 1PM it pulls empty response. As soon as i reload API cache it shows correct data again without any other changes. I have not changed any of the default Taffy config and my CFML has no caching enabled or in the management page. What am i doing wrong? Sorry for cross posting but i keep finding more appropriate channels.
    a
    12 replies · 2 participants
  • s

    satauros

    01/09/2023, 2:39 PM
    @atuttle, can Taffy generate an OpenAPI spec file?
  • a

    atuttle

    01/09/2023, 2:41 PM
    Not to my knowledge. The data it contains about api resources could probably be used to do that. Inspect
    application._taffy.resources
    if you want to take a crack at it. Maybe an API resource that returns that data format as the response?
  • s

    satauros

    01/09/2023, 2:45 PM
    Too bad, my plate is too full at this point to go ahead and take a crack at it. Was hoping it was supported out of the box. Ah well, something to put on my todo list. Thanks for the response!
  • a

    atuttle

    01/09/2023, 2:47 PM
    tell me about it! 🙃
  • s

    satauros

    01/09/2023, 3:56 PM
    For the fun I dumped the application._taffy struct, it does not contain
    resources
    but
    endpoints
    in my case (taffy 3.2.0).
  • a

    atuttle

    01/09/2023, 5:54 PM
    ah yeah, sorry. It’s been a long time since I was poking in there.
  • a

    atuttle

    01/13/2023, 9:52 PM
    Throwing this out there in case someone wants to try to work on this before I find the time/motivation: https://github.com/atuttle/Taffy/issues/431
  • e

    Evil Ware

    02/11/2023, 3:27 AM
    I think it can be done. I might be really off on this but couldnt we do something like the following.. <cfset openapi = createObject("component", "taffy.openapi").init()> <cfset openapi.register({ apiName = "My API", apiVersion = "1.0", swaggerVersion = "2.0", basePath = "/api", resourcePath = "/", apis = [ { path = "/hello", description = "Returns a greeting", operations = [ { httpMethod = "GET", summary = "Returns a greeting", responseClass = "string", nickname = "hello", parameters = [] } ] } ] })>
Powered by Linen
Title
e

Evil Ware

02/11/2023, 3:27 AM
I think it can be done. I might be really off on this but couldnt we do something like the following.. <cfset openapi = createObject("component", "taffy.openapi").init()> <cfset openapi.register({ apiName = "My API", apiVersion = "1.0", swaggerVersion = "2.0", basePath = "/api", resourcePath = "/", apis = [ { path = "/hello", description = "Returns a greeting", operations = [ { httpMethod = "GET", summary = "Returns a greeting", responseClass = "string", nickname = "hello", parameters = [] } ] } ] })>
View count: 2