Comments (4)
Great question! I believe this particular call is only used in a few places where the size will be much smaller than 2 GB (such as serving a catalog response in html or xml). There are other places in the code, like here that explicitly handle larger transfers, such as HTTPServer
requests. In those cases, I can confirm the correct bytes transferred size will show up in threddsServlet.log
. That said, because this isn't handled uniformly in the codebase, I would not be too surprised if what you describe above happens for some protocols/cases. Do you have a case where you see this behavior happening?
from thredds.
I have found it by parsing logs from the past few years looking for primarily transactions that match /thredds/fileServer/.....nc
.
That line you linked will set the 'Content-Length' header, but it leaves the httpResponseBodyLength
member in TdsServletResponseWrapper
untouched. So, any time contentLength > Integer.MAX_VALUE
the log will report -1 for the size, as I understand it.
The member/class that is used to report to "Request Completed" entries in the threddsServlet.log
.
https://github.com/Unidata/thredds/blob/v5.0.0-beta5/tds/src/main/java/thredds/servlet/filter/TdsServletResponseWrapper.java#L23
Where the httpResponseBodyLength
member is used.
from thredds.
Ah, thank you! I think I see now. We normally parse the Apache logs to get stats on how much data our TDS instances serve, but we should try to accurately capture that in the threddsServlet
logs as well. I'll be out of the office for the next few weeks, but I can take a look again once I get back (unless @ethanrd wants to give this a look).
from thredds.
That is what we have arrived at as well, using the Apache logs.
from thredds.
Related Issues (20)
- Possible loop in thredds.client.catalog graph?
- variable attributes showing up in OPeNDAP global attributes! HOT 8
- Performance Issue with high variable and dimension count
- Thredds do not behave well behind Nginx proxy serving as SSL termination HOT 4
- Question regarding WCS DescribeCoverage ResponseCRSs HOT 4
- Wrong URL in description of this repository HOT 1
- Cross-Origin Read Blocking (CORB) blocked cross-origin response thredds HOT 2
- EOFException on NCDump data
- DAP4 in TDS dap4.core.util.DapException: Resource root not found HOT 3
- WMS GetMap Request with style=contour Returns Error HOT 14
- Unexpected behavior when querying area around Meridian HOT 2
- Date truncated by cast to long HOT 7
- NCML Time axis aggregation with missing / time gaps HOT 6
- double encoding of spaces in filenames when user click on "Get Binary" or "Get ASCII" in OPeNDAP download form HOT 5
- trimDirectiveWhitespaces breaking GetTransect HOT 3
- Unsigned types in NcML
- Tracking log4j security issues HOT 10
- blank Godiva2 basemap HOT 1
- WMS service broken in 4.6.19+ HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from thredds.